Added HMAC packaging code.

Code was added to support the conversion from a string to a bit string
split into each bit with sequence numbers and HMACs associated with each.
This code already supports fake messages/fake keys.

Support for arbitrary hashing code is now enabled. Existing implementation
is now secure as an HMAC (before it was just vanilla SHA-512.)