allocator: allow MADV_HUGEPAGE to be disabled

use DISABLE_MADV_HUGEPAGE=1 to disable. note that this is the perf
regression on istc3. for whatever reason, passing MADV_HUGEPAGE in our
allocator when calling madvise() makes both faulting slower, and the
runtime slower.
Merge pull request #1 from kohler/master

Cleanups, scoped_rcu_region
runner: disable MADV_HUGEPAGE for istc3 benchmarks
runner: be more pedantic about the executables
plotter: new latency graph for TPCC scale exp
Fix NDEBUG ALWAYS_ASSERT.
Introduce keystring_type, use it in search callbacks.
String::length is preferred to size.
Define PREFETCH_DEFINED.
Remove unreferenced code.