No forking Extra nonce added to Bitcoin header.

Block version set to 3.
Unittest included.
Re-define 15 unused bits of the version field as an extra nonce inside the block header.
Accompanied and explained by a BIP, see wiki (https://github.com/BlockheaderNonce2/bitcoin/wiki).
Not forking.
Backwards compatible with GBT clients that are not aware of this.

Timo Hanke & Sergio Lerner
Its all actually MIT, old headers need updated, but instead of doing it all at once, its being done per-header until we do a bigger breaking change.