For ENG-4396, refactor TheHashinator to support multiple hashing approaches
Convert all C++ exceptions catches to const references
Bring in MurmurHash3 in Java from Apache Cassandra, and in C++
For ENG-4396, bring in missing hash files
For ENG-4394, ENG-4397, ENG-4398, add test to make sure murmur hash matches in Java (it didn't initially!)

The murmur hash implementation from cassandra was missing a conversion from unsigned by to signed int.
Missed some comments still in the buffer
Merge branch 'master' into ENG-4396
For ENG-4396 fix EE tests that broke because the signature of intialize changed
For ENG-4398 and ENG-4397, add hash function support for elastic
For ENG-4397, and ENG-4398, add missing files
For ENG-4395, ENG-4398, ENG-4397, add tests to elastic hashinator

Test that C++ matches Java. This is done by paramaterizing the existing hashinator test suite to work with both.

I also updated STX btree to the latest version removing the memory pooling code we were using. It was making testing the hashinator difficult and is of dubious value. Better to LD preload a jemalloc.
Fix tabs
For ENG-4396, remember to release byte array elements
For ENG-4396, captain obvious recommends not double freeing JNI byte arrays
For ENG-4396, accidentally reverted STX btree changes to use the boost pool allocators again. Revert back yet again
For ENG-4397, ENG-4396, ENG-4399, ENG-4313. Make hashinator updatable at runtime, and selectable via environment variable

Using an atomic reference to pair a version with the hashinator so that threads can update the hashinator if they are receiving a newer version of the hash function.
For ENG-4395, add a test case for values that hash exactly to tokens, and values that hash to before the first token
For ENG-4396 and friends, add comments a fix some bugs in the C++ hash to partition function.
For ENG-4396 and friends, fix bugs in mapping from hashed value to partition, add tests cases for boundry conditions
For ENG-4396, add a Java test that checks the hashed value to partition edge conditions