Align with Go version

This achieves compatibility with the current Go version of Fernet. There are two parts to this:

 1. Use `HMAC#digest` rather than `HMAC#hexdigest` (given we're producing a binary encoding before base64-encoding it, I don't think this is a problem)
 2. Work around the lack of the 'Q>' `Array#pack` / `String#unpack` format specifier in Ruby 1.9.2 and below.

I think before this is production-worthy, we should find a reasonable way to leverage `#pack`/`#unpack` in 1.9.3+, but not sure of the best way to do that.