hash/CMAC: add XCBCMAC class

XCBC-MAC is often used in ipsec. The only difference with CMAC is the
way to compute subkeys (RFC 3566 section 4).

Since the algorithm is *very* similar to CMAC I chose to put the class
in the same file. I simply added an optional `xcbc` parameter to the new()
function. If True, XCBCMAC will be used instead of CMAC.

The algorithm was checked against the test vectors provided in the RFC
(section 4.6).

See http://tools.ietf.org/html/rfc3566

Signed-off-by: Robin Jarry <robin.jarry@6wind.com>