Reset setBlockIndexCandidates once block index db loaded

Delete all entries in setBlockIndexCandidates that are worse than our new current block upon completion of the initial LoadBlockIndexDB.

No, I agree it feels safer to have the condition. Without it, we wouldn't even reach the assertion before executing code with undefined behaviour (assuming the assertion wouldn't hold).