Remove support for arbitrary meta information

Follow the standard format.

Embedding arbitrary meta information complicates
encode/decode to the point of not being worth it.
Instead, simply use the standard magic, and let interested
users add an additional header on top, using whatever
they want to link the two (e.g., HMAC of SHA(meta_info) and
_mac1).

This patch also removes the dependency on GHC.Generics,
improving portability.