jemalloc: Implement release_free_memory

Implement the 'release_free_memoy' alloc hook for jemalloc. This
purges all dirty (free, but still mapped in the process) pages.

Change-Id: I73b98480a984b0659c0e655b0bd6f6a3125accc1
jemalloc: Report free {un,}mapped size

Implement the two free memory stats - free_mapped_size and
free_unmapped_size for jemalloc.

Change-Id: Id5aa9338b942468cb688fd2a82e1c208b925aeb7
Add 'enable_thread_cache' call to hooks API

Add a new call to the allocator hooks API, allowing the caller to
enable/disable any thread caching for the calling thread. Implement
the API for jemalloc.

Change-Id: I005728775197865e2c1f4a4622cee90f39ed3a7b
Add alloc_hooks API to mock server

To allow tests using the mock server to make use of the allocator
hooks API, expose them through the mock server.

Change-Id: Id8da53dd812ded1b6aaa06861690400482099ee9
Add get_mapped_bytes() and release_free_memory() to testHarness

Allow clients of the testHarness to make use of these allocator
functions.

Change-Id: I8f3016caa4db466199d3caef25e466b1094a16a5
jemalloc: Implement mem_used tracking using experimental hooks

Make use of the experimental jemalloc new/delete hooks (from:
https://github.com/daverigby/jemalloc/tree/dev) to allow memcached to
track mem_used when using jemalloc as the memory allocator.

Change-Id: Iedc51fb68430b78eb2558925a458c3cc640d3943