This makes C++ depending on Rust Just Work out of the box, while still
giving people
hooks to customise these if they need.
In particular, this means we can centrally manage and update our default
definition of these symbols, rather than require people to vendor them
and keep their copies up to date as new versions of Rust come out.
We provide this as a best-effort tool which we hope will be useful to
people, and will attempt to maintain the C++ code included here, but
make not guarantees about its universality or correctness. If you need
more specific behaviours, you should set your own `allocator_library`
and `global_allocator_library` attributes on your toolchains.