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
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
Add run_defragmenter_task to ENGINE API.

We need a way to trigger defragment on demand from testcases.

Change-Id: Ie11e0b4d2ad573361ed28416fdfda99f20d4fec2
Add long-term-storage hooks to allocator API, implement for jemalloc

Add two new hooks to the allocator hooks API: alloc_long_term_arena()
and free_long_term_arena(). These allow the client to make allocations
from a dedicated long-term region, which can assist in minimizing
fragmentation due to mising of short-term and long-term
objects.

Implement this inteface for jemalloc, using it's arena APIs.

Change-Id: I62db22c2f197a980d81905d9f7c0da9e95e3af92
jemalloc: Show per-arena stats in allocator stats

Now multiple areans are actually used by memcached, print out each
arena's information as part of jemalloc's get_detailed_stats() call.

Change-Id: I5c2628952aeedd8ef2a27175736013da3c83564f