move Checkpoints:fEnabled from step 2 to step 3 in init

- it belongs to parameter-to-internal flags step, not parameter
  interactions phase
Merge pull request #2935 from sipa/obounds

Fix out-of-bounds check
Document and test OP_RESERVED weirdness

Seems it was forgotten about when IsPushOnly() and the unittests were
written. A particular oddity is that OP_RESERVED doesn't count towards
the >201 opcode limit unlike every other named opcode.
miner: constify CreateNewBlock() arg scriptPubKeyIn
Merge pull request #2938 from petertodd/op-reserved-weirdness

Document and test OP_RESERVED weirdness
Merge pull request #2928 from jgarzik/cnb-txout

CreateNewBlock / getblocktemplate cleaning
Set Accept: application/bitcoin-paymentrequest header

Suggestion from BitPay: set an Accept: HTTP header when
fetching payment requests / payment ACKs.
[wallet] Consider generated coins mature at COINBASE_MATURITY+1

We're not seeing large reorgs that would justify waiting a large
 amount past the rule required maturity, and the extra three
 hours is just a nuisance. Take one more block to at least give
 the 100th block time to propagate.
Merge pull request #2904 from gmaxwell/newaddr-no-passphrase

[QT] Don't ask for a passphrase to getnewaddress.
Merge pull request #2931 from Diapolo/intro

Bitcoin-Qt: add testnet check and icon to intro dialog
RPC: add getrawchangeaddress, for raw transaction change destinations
[raw] reject insanely high fees by default in sendrawtransaction

There have been several incidents where mainnet experimentation with
 raw transactions  resulted in insane fees.  This is hard to prevent
 in the raw transaction api because the inputs may not be known.
 Since sending doesn't work if the inputs aren't known, we can catch
 it there.

This rejects fees > than 10000 * nMinRelayTxFee or 1 BTC with the
 defaults and can be overridden with a bool at the rpc.
improve wallet load time by removing duplicated calls to EC_KEY_check_key and adding a hash for vchPubKey/vchPrivKey entries in wallet.dat

backwards compatible with previous wallet.dat format
verify vchPubKey matches calculated public key unless fSkipCheck is set
Bitcoin-Qt: fixes for using display unit from options

- extend PaymentServer with setOptionsModel() and rework initNetManager()
  to make use of that
- fix all other places in the code to use display unit from options and no
  hard-coded unit
Merge pull request #2940 from Diapolo/checkpoint

move Checkpoints:fEnabled from step 2 to step 3 in init
qt: Handle address purpose in incremental updates

Correctly use the purpose of addresses that are added after the start
of the client. Addresses with purpose "refund" and "change" should not
be visible in the GUI. This is now handled correctly.
Merge pull request #2930 from Diapolo/displayUnit

Bitcoin-Qt: fixes for using display unit from options
qt: Add comment to sorting step in refreshAddressTable
Add "mkbootstrap" script to contrib, for creating bootstrap.dat.