Remove dummy PRIszX macros for formatting

Size specifiers are no longer needed now that we use typesafe tinyformat
for string formatting, instead of the system's sprintf.

No functional changes.

This continues the work in #3735.

Conflicts:
	src/core.cpp
	src/main.cpp
	src/miner.cpp
[Qt] ensure payment request network matches client network

- replaces checks in SendCoinsDialog::handlePaymentRequest() that belong
  to PaymentServer (normal URIs are special cased, as only an isValid
  check is done on BTC addresses)
- prevents the client to handle payment requests that do not match the
  clients network and shows an error instead (mainly a problem with
  drag&drop payment requests onto the client window)
- includes some small comment changes also
build: fix make clean on OSX

Rebased-From: 74df0f5
Rebased-By: Wladimir J. van der Laan <laanwj@gmail.com>

Conflicts:
	Makefile.am
ui: Check for !pixmap() before trying to export QR code

Adds null pointer checks as well as prevents the Save/Copy context
menu from appearing at all if no image is shown.

Fixes issue #4140
Add missing cs_main lock to VerifyDB

Fixes issue #4139.
[Qt] fix ugly typo in bitcoin.cpp

Closes #4145.

Rebased-By: Wladimir J. van der Laan <laanwj@gmail.com>
Rebased-From: 1e4b083

Conflicts:
	src/qt/locale/bitcoin_en.ts
Add rejection of non-null CHECKMULTISIG dummy values

This is a source of transaction mutability as the dummy value was
previously not checked and could be modified to something other than the
usual OP_0 value.
Do not trigger a DoS ban if SCRIPT_VERIFY_NULLDUMMY fails
Increase IsStandard() scriptSig length

Removes the limits on number of pubkeys for P2SH CHECKMULTISIG outputs.
Previously with the 500 byte scriptSig limit there were odd restrictions
where even a 1-of-12 P2SH could be spent in a standard transaction(1),
yet multisig scriptPubKey's requiring more signatures quickly ran out of
scriptSig space.

From a "stuff-data-in-the-blockchain" point of view not much has changed
as with the prior commit now only allowing the dummy value to be null
the newly allowed scriptSig space can only be used for signatures. In
any case, just using more outputs is trivial and doesn't cost much.

1) See 779b519480d8c5346de6e635119c7ee772e97ec872240c45e558f582a37b4b73
   Mined by BTC Guild.
Check redeemScript size does not exceed 520 byte limit

redeemScripts >520bytes can't be spent due to the
MAX_SCRIPT_ELEMENT_SIZE limit; previously the addmultisigaddress and
createmultisig RPC calls would let you violate that limit unknowingly.

Also made the wallet code itself check the redeemScript prior to adding
it to the wallet, which in the (rare) instance that a user has added an
invalid oversized redeemScript to their wallet causes an error on
startup. The affected key isn't added to the wallet; other keys are
unaffected.
Typo Fix In decoderawtransaction Help: s/txid/hex/

Help text appears to have been copy/pasted from getrawtransaction,
so it erroneously asked for a txid where rawtransaction hex should appear.

Remove lines which were copy/pasted from getrawtransaction but which
aren't displayed by decoderawtransaction.

Rebased-By: Wladimir J. van der Laan <laanwj@gmail.com>
Rebased-From: 5cc0133 80c521e
Github-Pull: #4106
build: fix: remove error output

while git not found in path, error is output to console.
Fix transaction tests

Conflict between low-s (6fd7ef2) and test updates in d3a33fc.
Deduplicate shared code between uint160 and uint256
Exception instead of assigning 0 in case of wrong vector length

Conflicts:
	src/uint256.h
Add multiplication and division to uint160/uint256
Move {Get,Set}Compact from bignum to uint256

Conflicts:
	src/chainparams.cpp
	src/main.cpp
	src/miner.cpp
Deduplicate uint* comparison operator logic
util: add parseint32 function with strict error reporting

None of the current integer parsing functions in util
check whether the result is valid and fits in the range
of the type. This is required for less sloppy error reporting.
Use new function parseint32 in SplitHostPort

Use the new function parseint32 in SplitHostPort instead of calling
strtol directly.