Check block header when accepting headers from peers.

Actually check block headers received from peers.  If a peer sends
headers with invalid PoW, they were accepted and added to the disk block
index previously.  This would then lead to a failure in checking the PoW
during the next startup while loading the block index.