[Wallet] Improve ReorderTransactions(..)
contrib/linearize: Guarantee that output is generated in-order

This was typically ensured implicitly by virtue of normal bitcoind
operation.  Adding an explicit check provides a stronger guarantee, and
it is cheap to add.
contrib/linearize: split block files based on year-month, not just year
[Qt] Call checkBalanceChanged() periodically instead for every updated transaction
[Qt] minor watch-only changes

- use watch-only, not watchonly
- add back a tooltip hint when hovering addresses and attach
  "(watch-only)" at the end
Serializer simplifications after IMPLEMENT_SERIALIZE overhaul
Fixing Compiler Error C2466
Rename IMPLEMENT_SERIALIZE to ADD_SERIALIZE_METHODS
Merge pull request #4810

c0f5d4a Fixing Compiler Error C2466 (ENikS)
Merge pull request #4812

53efb09 Discover some missing includes (jtimon)
8d5e510 Remove unused function StackString() and class CCoins; (jtimon)
Use OR of respective block flags for masks
remove useless millisleep

reduces time to service requests improving performance
Remove DNS Seeds run by entities which were never well-established.
net: Remove MilliSleep from StopNode

I don't understand why it would be there in the first place. This looks
like voodoo, not programming.
Merge pull request #4671

550d4fa Remove DNS Seeds run by entities which were never well-established. (Matt Corallo)
Merge pull request #4820

910526d Use OR of respective block flags for masks (Pieter Wuille)
Merge pull request #4808

3f6540a Rename IMPLEMENT_SERIALIZE to ADD_SERIALIZE_METHODS (Pieter Wuille)
47eb765 Serializer simplifications after IMPLEMENT_SERIALIZE overhaul (Pieter Wuille)
checkpoints.cpp depends on main, it can use mapBlockIndex directly
Introduce BlockMap type for mapBlockIndex
Use boost::unordered_map for mapBlockIndex