Do a better job of cleaning up and logging tasks during p2p shutdown, reorder shutdown of client object stop the p2p network object before closing the databases it may depend on using.
Prevent duplicate rebroadcast_pending() loops
Merge branch 'develop' into shutdown_without_crashing
Add new vote selection method, vote_recommended

The new vote selection method iterates over all approved delegates,
takes their recommended slates, and combines them to create a maximum-
Merge branch 'develop' into vote_recommended
Instead of failing for invalid delegate recommendations, disapprove the
inept/malicious delegate
Merge branch 'develop' into shutdown_without_crashing
Code cleanup, add logging in destructors and thread shutdown
More logging & cleanup
Merge branch 'develop' into shutdown_without_crashing
Switch p2p back to main thread
Merge branch 'develop' into shutdown_without_crashing
More regression test fixes
Merge branch 'develop' of github.com:BitShares/bitshares_toolkit into develop
Update fc submodule
Merge branch 'develop' into shutdown_without_crashing
Remove define that has migrated to CMakeLists
More regression test fixes
Sleep for one microsecond in node:close as a workaround for now to ensure that async'd peer_connections destructors have finished before we finish destructing the node. Not a perfect solution, but works for now. Changed logging level for balance reporting during genesis block initialization to speed it up somewhat.
Fix remaining regression tests

Left failing:
* wallet_market_matchup_test
* wallet_multipart_transfer_test