Refactor AbstractStatistics
AbstractStatistics is too heavily tied to the text output window (or at least the listeners). It should only handle data collection and leave text output to a subclass TextStatistics
. This way the CLI's CommandLineStatistics doesn't have to reimplement data collection.