Low min difficulty, and smoother adjustment

This is a hard-fork change.

It will allow us to have 1-minute blocks, rather than the 3 minute blocks we're currently seeing.

It lowers the minimum staking difficulty to 16 times lower, and uses the average time per block of the last 16 blocks rather than just the last 2, so difficulty won't jump around as much.

This will need editing (in main.cpp):

    const int LOWER_DIFFICULTY_START = 42000;

based on when we want the hard fork to happen.

I've not been able to get a testnet instance running, because I'm stuck on the PoW stage and so this code isn't very well tested yet.

Are you able to test this change?