Hash: max message length is now 2^52 bytes.

Previous limit was (2^32)/8-1 = 512 MiB due to the way the message
length was handled, after which incorrect results were produced.

Now the limit is 4096 TiB, but of course, you wouldn't create a
Uint8Array of such length :-)
Merge branch 'big-sha'