Disassociate hash algorithm with hash function name

This will make it easier to select the correct one for the job, and also
make it possible to substitute a better one in the future if need be without
having to change the function name.

kunth is duplicated, once for integer hashing and once for shallow pointer hashing, to
make usage more readable.
6 files changed