Implementation of a hasher that produces the same values across releases.
The hasher should be fast and have a low chance of collisions (but is not sufficient for cryptographic purposes).