move README.md to extra-source-files

I suggest moving the readme file to extra-source-files
so that it doesn't get installed in datadir.

(Cabal-1.18 has a new extra-doc-files field so
eventually these kind of files could live there.)
use a full type (instead of an empty one) to describe hash algorithm
export a function to initialize a context out of a named algorithm.
add block size into the macro definition
export the hash block size for HMAC purpose
Use the generic hmac version instead of the modular one.

Also added some test vectors for hmac-sha3 based on [1].
Beware there's no official test vectors, nor hmac-sha3
make any sense.

[1] http://www.di-mgt.com.au/hmac_sha3_testvectors.html
add some benchmarks for hmac
Change the HMAC type to be the Digest.

digest can be recovered using hmacGetDigest
Support building on QNXNTO
Merge branch 'patch-1' of https://github.com/juhp/hs-cryptohash
Compute the block size on the context and change HMAC api.

compute the block on the contextinstead of the hash algorithm itself,
as it's easier to automatically infer a context with hashInit.

make the hmac API to not take a hash algorithm parameter, but infer the
algorithm used by the a type. add a hmacAlg, that just like hashInitAlg
take an explicit algorithm as parameter to infer the HMAC type. this function
is better when type inference is not able to automatically deduce the phantom.
add haddock comment for each hash exported
put the where clause after the ) in a module declaration list
add a haddock comment for each Ctx
add little haddock comment
add haddock comment for SHA512t context too
bump version