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

This is #15720, rebased and reopened.

cc @nikomatsakis
(cgaebel wrote this, not me) I did out of curiosity, and the performance was slightly worse in microbenchmarks.