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

This is #15720, rebased and reopened.

cc @nikomatsakis
Shouldn't need the lifetime annotations here. actually a just noticed you have a lot of that. Consider doing a pass to cull all of the needless annotations.