It made sense for them to turn
ftp(1) into a general purpose "fetcher" for the install media and for the package/port system.
If you look in the OpenBSD -CURRENT source for ftp, you'll notice that if it's compiled for SMALL.. it is only a fetcher, and cannot be used to upload files to an FTP server.
You'll also notice that NetBSD and FreeBSD support HTTP in ftp, it's not only an OpenBSD thing.