Make hashes of Lazy ByteStrings unambiguous
Make hashes of Lazy ByteStrings unambiguous

We now count the length of the LBS manually in an accumulator argument
and hash it afterwards.

Previously we hashed the length of each chunk. This had two serious
problems:

* Different chunking of two identical lazy bytestrings led to different
  hashes of the same string.
* Chunk lengths could be identical to a character of another bytestring,
  leading to the same hash for different bytestrings

In conclusion, almost everything that could be wrong, was wrong.

sternenseemann/large-hashable,sternenseemann/large-hashable,factisresearch/large-hashable,factisresearch/large-hashable