hash_append: Phase 1
This commit compiles and passes all unit tests.

It has not gotten completely rid of hash_combine
nor std::hash or boost::hash.  But it is a good
stepping stone in that direction.  This is a
shippable commit.  And already large enough
that I don't want to make it bigger.

I have left some commented-out debugging statements
in RippleAssets.cpp.  Uncommenting these 12 logging
statements reveals two things:

1.  Successive hashes with the same keys have the
    same values.

2.  Hashes of different values are vastly different.

These debugging statements can disappear soon, but
I included them here so others could easily observe
these results.