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
Add ZeroCopyOutputStream and tidy up
Split peer connect logic to another class (RIPD-711):
All of the logic for establishing an outbound peer connection including
the initial HTTP handshake exchange is moved into a separate class. This
allows PeerImp to have a strong invariant: All PeerImp objects that exist
represent active peer connections that have already gone through the
handshake process.
[FOLD] Remove obsolete outbound PeerImp logic
[FOLD] remove dead code
[FOLD] fix proto version and logging
[FOLD] remove unused coroutine includes and types