Cold minting

This pull request includes a few more changes than just cold minting. The cold minting changes are in commit 8df4a0360f3917e042cc0185dc39ed894c9f4148. They do not include any change in the GUI yet, so you can only create cold minting addresses through RPC.

The protocol switch time is set very far in the future until we decide the final time.

The other changes include:
* improvements on the functional test system (11dafc93ae809e5da7598c35ce732e2c5c692dee)
* a fix on duplicate stake rejection (there was problems when a new block was received on top of a rejected block) (7c5e5a336f5dd175f22443a8e2e4c47fb93c7890)
* a bitcoin 0.8 protocol change delayed until protocol switch (edd3f091ecb22367f2f6cd4bea210bbc1df29702)