Document FIPS mode support
Refactor hashing code to simplify the nif interface

Using the generic EVP_MD_* API makes it possible to remove a lot of
nif functions. Effectively the same change that took place on the
Erlang API in R16B01 is now applied to the C code.

The streaming API in nof-FIPS build is still using the old, low level
C functions to allow context copying on OpenSSL 0.9.8, but through
some generic functions at least.
Refactor hmac code to simplify the nif interface