pack-objects: replace name_hash with min_hash

Hash the content of objects to group by similar content.
First, split at approximately 16 byte boundaries:
* 16 byte sliding window Adler hash
* Mixing function from http://burtleburtle.net/bob/hash/integer.html
* Subsample by fixing lower bits all set.
Then take minimum and maximum hash values.
Halve these, taking the middle 16 bits of the unfixed portions.
Concatenate the shortened hashes to make a 32 bit signature.