Make it so genesis hash is in one place
fix compiler error and redundant logic
Add "the uber miner" for genesis block mining without code duplication
Move CheckProofOfWork to chainparams.cpp, since we need it there and there is nothign tying it to main.cpp (eventually it's moved to pow.cpp in bitcoin 0.10 anyway)