This commit adds the required constructor overloads and member functions to
make the supporting allocators actually valid allocators. The implementation
of 'allocate' defers to 'std::malloc', and correspondingly that of 'deallocate'
defers to 'std::free'.
This commit also changes supporting allocators 'A1' to track the number of
elements requested and 'A2' to track the hint that was requested in order to
facilitate testing.
Two (seemingly unrelated) tests seem to fail:
Failing Tests (2):
libc++ :: std/utilities/tuple/tuple.general/tuple.smartptr.pass.cpp libc++ :: std/utilities/tuple/tuple.tuple/tuple.creation/tuple_cat.pass.cpp