Generic AESCBCHMACSHA2 and concrete AES128CBCHMACSHA256128

JSON Web Encryption defines an entire family of algorithms built around AES-CBC
and HMAC SHA2.

This provides a generic core for these functions, and a concrete implementation
of the first as described in the JSON Web Algorithms IETF draft.