Optimized HashMap. RawTable exposes a safe interface. (reopen)

This is #15720, rebased and reopened.

cc @nikomatsakis
I've looked at the bucket distance distribution curve and it was as I expected, and as advertised in the paper. I assumed my math was sound, but it'd be great if that got double-checked with actual performance numbers!

Also remember that lower load factors do trade off memory usage, and increased cache pressure can make EVERYTHING slower, not just the hashtable.

If you find increasing the load factor makes the hashtable faster, please do it! However, be careful about decreasing it.