This moves the verification of the proof at node startup from init.cpp to processor.cpp.
A factory method is used to get the error message for InitError.
This introduces a minor change from the previous behavior, which I consider to be an improvement: we used to check the proof only if -enableavalanche was set and -avaproof was specified, but now the proof is checked if specified even in the absence of -enableavalanche.