Start adding detailed report, move state into class as prelude to refactoring.