rename "Report" to "Error Report"
give each linter a HighlightSet
abstract the functionality in Linter.lint()