Fix logic for nSyncStarted (only increases when headers actually arrive).
Request headers while we don't have the headers (fix to headersfirst8)
Add nLastDataPos variable for partial message tracking.
Rearrange ProcessMessages
Track partial block download progress, timings and bandwidth, and add disconnect logic for stalls.
Disable sipa stall disconnect logic, but still log when it is triggered.
Move "received block" message so that we can include the height in the debug message.
Log concurrent downloads
Improve getheader requests
Improve getheaders (recv) logging
Improve getblocks (reception) logging
Only UpdateTip one at a time, so as not to block network activity.
MAX_TRANSIT_PER_PEER = 3
Don't disconnect on ping timeout. (Doesn't seem to be a reliable indicator of inactivity).
Improve and shorten "ActiveTip: new best" debug line.
getheaders (only get the highest header the remote node will have).
Add nodeid to inactivity tracking
Only respond to getblocks requests that are asking for substantially newer block invs.
Use syncheight instead of startheight for broadcasting block invs
Add net2 debug option