Speed up PHJ.

This patch does a few things to speed up probe performance by ~50% in a fact to dim
table join on a single int64 key.

- Change IR function to return int instead of status. This doesn't change performance
but makes the IR much easier to read.
- Switch from FNV to murmur2 hash. I had done some experiments before and this function
is much faster than FNV and produces better hashes.
- Remove some unnecessary state in HashTableCtx that was not necessary and generating
load/stores.
- Cache the per partition hash table instead of walking the hash_partitions_ structure.

This takes us from roughly 2x slower from v1.4 to ~35% slower. If I switch the hash
function to CRC (like in v1.4) the perf difference is <5%. In a follow up patch, we'll
probably have to use CRC as the first level to get perf parity in the non-spilling
case.

Change-Id: I7481a35ed767d4817e78d06fe85016408620a85a
Reviewed-on: http://gerrit.sjc.cloudera.com:8080/4325
Reviewed-by: Nong Li <nong@cloudera.com>
Tested-by: jenkins