Hazard pointers have been implemented

Have to test them now, and then convert the SMR data structures to use them.

They’re much less work to implement than epoch based SMR =-)