allocator: more sanity checks
benchmarks: fix mis-alignment with pinning
ycsb: fix loader to CPU allocation to be NUMA aware

a bit of a hack, since we want to use all available cores to load the
tree (to speed up benchmarking time), but we also want to distribute the
memory as if we had only the number of threads running in the benchmark
also loading the tree.
allocator: more friendly OOM messages
ycsb: fix corner cases on previous allocation commit
allocator: use libnuma to provide placement hints before fault
ycsb: make the non-parallel loader respect NUMA