Make Malloc a trait rather than a struct so that method
implementations can be overridden at the trait level, allowing
the macros to still be useful even with custom implementations
Implement Malloc for ElfMallocGlobal
Switch elfc to use malloc-bind
Add documentation to each Malloc method to document the exact
behavior of the corresponding function of the C API; this should
not only provide documentation for callers, but also provide
documentation for those intending to provide custom implementations
of any of these methods
Remove reallocarray, which was spuriously compiled for Linux (it
is actually currently an OpenBSD-only function)