Only HashPrefix can create prefixes.

Have compiler enforce that we have our complete list of prefixes in HashPrefix.cpp by disallowing the rest of rippled to construct or modify them.

* Make constructor private.
* Disallow assignment.

@scottschurr, @ximinez
Your call, but here's my view.  When I'm writing library-like code I try to think about ways something might be used.  But I don't often write library-like code.  So my habit has been to make private (the old form of "= delete") any of the special member functions that I don't use right now.  Because it's not library code if someone needs it later they can add it.  They'll also be aware that they are adding functionality that wasn't present -- or needed -- before.  So my inclination is to "= delete" it.