Added Hashed MAC (HMAC) support.

Added -key option to specify key to create Hashed Message Authentication Code (HMAC).
Implemented data and file support, but not channel yet.