Improve error checking when fetching distfiles from ftp.freebsd.org.

* Generous 60 second timeout for each ftp transfer.
* If MANIFEST exists, check sha256 checksums of distfiles/
* Try to fetch again in active mode if default ftp PASSIVE mode failed.
* Error out early.