Add nLastDataPos variable for partial message tracking.
Add NodeId to CNodeState (for logging/debugging purposes)
Rearrange ProcessMessages
Track partial block download progress, timings and bandwidth, and add disconnect logic for stalls.
Add CaughtUp() function (needed by later commits)
Add extra debugging messages for download and stall logic.
Stripe downloads (so not a contiguous chunk is requested from one node).
Disable sipa stall disconnect logic, but still log when it would have been triggered.
Disconnect no longer useful peers.
Find the runt of the litter (and disconnect it).
Reset variables when network changed.
Allow many blocks to be received in one go from a peer for up to 1 second.

This speeds up IDB.
TEMP logging - show time spent receiving
TEMP logging of nBatch