Add CValidationInterface::BlockChecked notification
Bugfix: submitblock: Use a temporary CValidationState to determine accurately the outcome of ProcessBlock, now that it no longer does the full block validity check
Rename RPC_TRANSACTION_* errors to RPC_VERIFY_* and use RPC_VERIFY_ERROR for submitblock
Rename ProcessBlock to ProcessNewBlock to indicate change of behaviour, and document it
Don't relay alerts to peers before version negotiation

Fixes #1436
Introduce preferred download peers
Fix for crash during block download
Fix -loadblock after shutdown during IBD
Be a bit more verbose during -loadblock if we already have blocks
RPC: submitblock: Support for returning specific rejection reasons
tests: enable alertnotify test for Windows

The semantics of "echo" are different there and they change the resulting text,
but they're still correct and predictable.
tests: allow rpc-tests to get filenames for bitcoind and bitcoin-cli from the environment

This will allow for windows tests to run with bitcoind.exe and bitcoin-cli.exe
tests: fix forknotify.py on windows

Windows interprets 'foo.txt' as a literal filename while "foo.txt" is treated
as expected.
tests: remove old pull-tester scripts

They're unused since the switch to Travis
tests: replace the old (unused since Travis) tests with new rpc test scripts
add tests to travis
boost: moveonly: create eccryptoverify.h|cpp and move helper functions there

Eventually (after 0.10) these files will hold the logic for crypto
verification routines, and CKey/CPubKey will call into them.
boost: moveonly: move BIP32Hash to hash.h
boost: moveonly: split CPubKey and friends to new files
minor cleanup: include orders, end comments etc.

- no code changes