Add tests folder/package
Add PollingThread class
Add FileWatcher class
Add CoverageFinder class

This will be used in multiple places to find the coverage file for a
given source file.
Add ViewWatcherMediator
Log detected changes to files' coverage data
Split out CoverageCommand with finder stuff
Add ViewUpdater to update coverage data in a view
Update coverage on startup, and when opening views

Previously it'd only update when the coverage data file changed.
Add coverage data parser/model
Return coverage data in CoverageCommand::coverage()
Add CoverageWatcher
Re-use parsed coverage data on update
Remove annotations when coverage file deleted