Cleanup:
* Remove is_bit_set and use regular bitwise operations instead.
* Remove the function-like macro "nothing".
Ledger load and ledger replay fixes:
 * Stash the loaded ledger where consensus can find it.
 * When loading a ledger for startup, try the backend too
 * Apply replay transactions to a mutable snapshot
Fix state check in PeerImp::recvHello
Process switches with regex in VSProject generator:
* Handles "DisableSpecificWarnings" switches
Add missing beast includes
Tidy up overlay declarations

Conflicts:
	src/ripple/module/app/main/Application.cpp
	src/ripple/module/app/misc/NetworkOPs.cpp
	src/ripple/module/app/peers/PeerSet.cpp
Use strand::running_in_this_thread instead of bool
Move overlay up one directory

Conflicts:
	src/ripple/module/app/main/Application.cpp
	src/ripple/module/app/misc/NetworkOPs.cpp
	src/ripple/module/app/peers/PeerSet.cpp
	src/ripple/overlay/impl/PeerDoor.cpp
Remove unused protocol message types:
* mtACCOUNT
* mtCONTACT
* mtERROR
* mtGET_ACCOUNT
* mtGET_CONTACTS
* mtGET_VALIDATIONS
* mtSEARCH_TRANSACTION
* mtUNUSED_FIELD
Update README.md
Add abstract_protocol_handler, message_stream
[FOLD] Add member to PeerImp
[FOLD] Route data through message_stream
[WIP]