Reporting refactor, part 2: create another abstract method

This method takes a LogLevel _and_ a processing message as an argument.

The goal is to have all .debug(), .info() etc call what is for now
.log(ProcessingMessage) which will become .dispatch(), and when the message
needs to be logged, call this method -- and get rid of the current .doLog().

Also modify two tests which needed to mock .isSuccess() which is now final.