Decouple pow from timedata
CheckProof method for CBlockHeader and CBlockIndex
Create Proof class
hide Proof::GetNextChallenge()
CheckMinWork(uint, uint, int64) -> Proof::CheckMinChallenge(Proof&)