Remove unused function main:VerifySignature
Remove CScriptCheck::nHashType (was always 0)
Don't pass nHashType to VerifyScript
Don't pass nHashType to EvalScript nor CheckSig
update rpc help message for gettransaction to add includeWatchonly param
fix missing gettransaction entries in rpcclient
Move CTxDestination from script/script to script/standard
Merge pull request #4899

0be990b Move CTxDestination from script/script to script/standard (Pieter Wuille)
Merge pull request #4863

1a61396 fix missing gettransaction entries in rpcclient (Benedict Chan)
57e1716 update rpc help message for gettransaction to add includeWatchonly param (Benedict Chan)
Merge pull request #4555

6dcfda2 Don't pass nHashType to EvalScript nor CheckSig (jtimon)
2b23a87 Don't pass nHashType to VerifyScript (jtimon)
ce3649fb Remove CScriptCheck::nHashType (was always 0) (jtimon)
358562b Remove unused function main:VerifySignature (jtimon)
Use ModifyCoins instead of mutable GetCoins.

Replace the mutable non-copying GetCoins method with a ModifyCoins, which
returns an encapsulated iterator, so we can keep track of concurrent
modifications (as iterators can be invalidated by those) and run cleanup
code after a modification is finished.

This also removes the overloading of the 'GetCoins' name.
Get rid of CCoinsView's SetCoins and SetBestBlock.

All direct modifications are now done through ModifyCoins, and BatchWrite is
used for pushing batches of queued modifications up, so we don't need the
low-level SetCoins and SetBestBlock anymore in the top-level CCoinsView class.
Do not keep fully spent but unwritten CCoins entries cached.

Instead of storing CCoins entries directly in CCoinsMap, store a CCoinsCacheEntry
which additionally keeps track of whether a particular entry is:
* dirty: potentially different from its parent view.
* fresh: the parent view is known to not have a non-pruned version.

This allows us to skip non-dirty cache entries when pushing batches of changes up,
and to remove CCoins entries about transactions that are fully spent before the
parent cache learns about them.
Add coins_tests with a large randomized CCoinViewCache test.