Fix for GetBlockValue() after block 13,440,000

Forces the block reward to zero when right shift in GetBlockValue() is
undefined, after 64 reward halvings (block height 13,440,000).
Edit subsidy_limit_test to account for BIP42

Because no one wants 4 gold mines being discovered every mibillenium.
Merge pull request #3842 from ditto-b/master

Fix for GetBlockValue() after block 13,440,000