[Qt] Fix No such slot UnitDisplayStatusBarControl::onDisplayUnitsClicked
Fix Watchonly: cs_main lock not held
Reject transactions with excessive numbers of sigops
Set -discover=0 in regtest framework

The regtest framework is local, so often there is no need to
discover our external IP.  Setting -discover=0 in util.py works
around shutdown hang caused by GetExternalIP waiting in recv().
Merge pull request #4519

e3496da [Qt] Fix No such slot UnitDisplayStatusBarControl::onDisplayUnitsClicked (Cozz Lovan)
Merge pull request #4510

6b407e4 -datadir is now allowed in config files (Zak Wilcox)
Merge pull request #4503

b45a6e8 Add test for getblocktemplate longpolling (Wladimir J. van der Laan)
ff6a7af getblocktemplate: longpolling support (Luke Dashjr)
Merge pull request #4520

39cc492 Fix Watchonly: cs_main lock not held (Cozz Lovan)
Merge pull request #4378

dc942e6 Introduce whitelisted peers. (Pieter Wuille)
qt: Ignore showNormalIfMinimized in initialization or shutdown

Also get rid of ui_interface flag NOSHOWGUI. It's up to the GUI to
decide this.

Fixes #4360.
Merge pull request #4518

76fd7b8 [Qt] Fix segfault when launched with -disablewallet (Cozz Lovan)
Merge pull request #4513

6265ecc Clarify that redeemScript is often optional (Zak Wilcox)
Merge pull request #4524

49d5712 qt: Ignore showNormalIfMinimized in initialization or shutdown (Wladimir J. van der Laan)
Merge pull request #4400

4eedf4f make RandAddSeed() use OPENSSL_cleanse() (Philip Kaufmann)
6354935 move rand functions from util to new random.h/.cpp (Philip Kaufmann)
001a53d add GetRandBytes() as wrapper for RAND_bytes() (Philip Kaufmann)
Fixed error in 'getbalance' when using watchonly addresses.
Merge pull request #4525

d512534 Fixed error in 'getbalance' when using watchonly addresses. (JaSK)
Add option to disable 077 umask (create new files with system default umask)

The option is only effective for either wallet-less builds or if
-disablewallet is specified as well.

Rebased-By: Wladimir J. van der Laan <laanwj@gmail.com>
Rebased-From: 34d5fc0 4e1a196 bd4307b d53a33b 7e09b36
Github-Pull: #4286
Use unordered_map for CCoinsViewCache with salted hash
Fix semantic typo in state.CorruptionPossible check

state.Invalid() is always false, check should be IsInvalid()

Broken since 942b33a
Add helptexts for -whitelist and rpc prioritisetransaction and switch to bitcoin instead of satoshis