Major fixes (See description).

MD5 and SHA-256 now correctly work with files larger than 2^32 bytes
(4.3 GB)!  Changed formatting of defined types to include "_t" suffix.
Fixed minor bug in main function.