Use custom isc_mem based allocator for libuv, OpenSSL, and libxml2
The afforementioned libraries provides a way to replace the default allocator with user supplied allocator (malloc, realloc, calloc, strdup and free).
Create a memory context specifically for each of the libraries to allow tracking the memory usage that has originated from within the specific library. This will provide a separate memory context for each of the libraries ("libuv", "OpenSSL", "libxml2") to track the allocations and when shutting down the application it will check that all libxml2 allocations were returned to the allocator.
Closes #3559 (closed)
Edited by Ondřej Surý