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

This is #15720, rebased and reopened.

cc @nikomatsakis
Yes, it's cgaebel's code. This is a standard bitfiddly procedure.