forked from boostorg/unordered
Split node_constructor into two classes, one for constructing a node without a value, and then another for holding it once the value is constructed. Do the work of constructing values in convenience functions in allocate.hpp (construct_value_generic, construct_value, construct_pair).