Fix an issue that was preventing std::vector from invoking the move
constructor on its allocator when appropriate.
Added a constructor to __vector_base which accepts an rvalue reference
to the allocator, thus allowing the move constructor to be invoked.
Previously, only a const lvalue reference was being accepted.
This fixes bug 37694: https://bugs.llvm.org/show_bug.cgi?id=37694.