No need for these methods to be instance methods
Moved all clearing code to Linter.clear_view, made sure it cleared errors as well as marks
Check for syntax changes whenever the view is modified