Re-wrote the API to be bases around CoreFoundation.

Added HMAC-SHA1
Added MD5 File hashing