Added the MAC command to take in an arbitrary length file.  This depends
on libgcrypt to guarantee a 32 byte available.  Another way to do this
is to not directly depend on an external hash implementation, but to
take in 32 bytes directly.  I think it's easier for the user to not have
to pipe an external command first.

If libgcrypt is not available, this feature will be not be enabled.