Discourage NOPs reserved for soft-fork upgrades

NOP1 to NOP10 are reserved for future soft-fork upgrades. In the event
of an upgrade such NOPs have *VERIFY behavior, meaning that if their
arguments are not correct the script fails. Discouraging these NOPs by
rejecting transactions containing them from the mempool ensures that
we'll never accept transactions, nor mine blocks, with scripts that are
now invalid according to the majority of hashing power even if we're not
yet upgraded. Previously this wasn't an issue as the IsStandard() rules
didn't allow upgradable NOPs anyway, but 7f3b4e95 relaxed the
IsStandard() rules for P2SH redemptions allowing any redeemScript to be
spent.

We *do* allow upgradable NOPs in scripts so long as they are not
executed. This is harmless as there is no opportunity for the script to
be invalid post-upgrade.
Update comments in src/rpc* to be doxygen compatible
Check block header before accepting it.

Previously, AcceptBlockHeader did not check the header (in particular
PoW).  This made the client accept invalid-PoW-headers from peers in
headers-first sync.
qt: Make askpassphrase dialog behave more sanely

Set minimum sizes appropriately, and make sure that they
are enforced. Replaces #5226.
Merge pull request #5320

e0a25c5 qt: Make askpassphrase dialog behave more sanely (Wladimir J. van der Laan)
Merge pull request #5324

72fb3d2 Update comments in src/rpc* to be doxygen compatible (Michael Ford)
Merge pull request #5000

0391423 Discourage NOPs reserved for soft-fork upgrades (Peter Todd)
Merge pull request #5270

57425a2 Check block header before accepting it. (Daniel Kraft)