Release 1.50.0
Create a maintenance branch for 1.50.

I know we don't normally do this, but I wanted to store a fix for a bug in
unordered somewhere.
Unordered: Fix using a C++03 allocator with C++11 compiler.

Because the nodes had an implicit constructor, the `has_construct` trait was
detecting that the nodes could be constructed by construction then copy, which
really wasn't wanted. Also add a check that nodes aren't been copy constructed
to make sure this doesn't happen again.