Improve the humanAccountID cache (RIPD-693)

Profiling indicated some performance issues coming from the
cache of 160-bit account IDs to base58 format. This replaces
the single cache with two caches and rotates out old
entries.
Improve hex conversion & parsing routines
Fix incorrect source issuer for XRP source
Stability bugfixes for online delete SHAMapStore:
The correct ledger age is necessary for checking health
status, and the previous behavior caused the online deletion process to
abort if the process took too long.

The tuning parameter added and the parameter whose default was modified both
minimize impact of SQL DELETE operations by decreasing the default batch size
for deletes and for increasing the backoff period between deletion batches.
These parameters decrease contention for the SQLite and I/O with the trade-off
of longer processing time for online delete. Online-delete is not a
time-critical function, so a little slowness in wall-clock time is not harmful.
Revert e4c9822d785 "Enable processor-specific optimizations when available:"
Whitespace: clean WebSockets to 80 columns.
Do not use path if path expansion fails
First transaction
Create and use some testing API:

* Ledger::pointer
  createGenesisLedger(std::uint64_t start_amount_drops,
                      RippleAddress const& master);

* std::pair<RippleAddress, RippleAddress> createAccount();

* void
    makePayment(RippleAddress const& from, RippleAddress const& to,
                std::uint64_t amountDrops, Ledger::pointer const& ledger);
Add trust lines and currency payments.
Rename SerializedTransaction to STTx
[WIP] Advancing ledger.
[WIP] First ledger closed/advanced.
Package up close_and_advance.
Put correct time info into close_and_advance
Create API for creating an offer.
Alternate makePayment approach