A library to consistently crypto-hash Erlang Terms with sha, sha256 or sha512 . The main motivation
is that commutative data structures like maps are not hashed in order as was the case with e.g. hashing
a simple sequential serialisation, but have the same hash value independant of order.

You can then create UUID5 using SHA1. Alternatively you can use return an hexadecimal binary.

A function `term_to_binary/1` also exists to encode a reproducible binary object.

Usage example

Eshell V9.1.5  (abort with ^G)
1> application:ensure_all_started(ehash).
2>  H = ehash:hash(sha256, #{ a => 1 }).
3>  ehash:to_hex(H).
4> ehash:uuid5(#{ a => 1 }).


    $ rebar3 compile