Highlighting of Scala/HTML/JS/CSS

However, code is rather messy.
Also the results of TemplateRegionParser.computeRegions are now cached, and dirtied on reset
Fixed random exceptions being thrown and non-handled empty document corner case.
Fixed a few more bugs in the region parser, but bugs still persist because of how the template compiler works (it doesn't handle well just portions of a template file.. one possible fix is to reparse the whole file every time, but that's very hacky)
Added "batch source validation" (aka as-you-type error reporting) for scala code.
Deleted AbstractValidator and ISourceValidator code that apparently seems to be useless.
Added code completion for both HTML and Scala

Adding HTML completion was as easy as changing adding a couple of tags to the extension point, so I added it now, instead of waiting.
Added hyperlinking for Scala and HTML anchor tags.
Added text hover for Scala and HTML
Minor changes to annotations.
Fixed a lot of parsing bugs

A large part of the parsing bugs were due simply to the fact that the parser wasn't being given enough context to figure out what was not html/default code. So, instead of trying to being smart for efficiency sake, the whole document is reparsed each time now (instead of the dirty subregions, as before).
Fixed bugs causing annotations in right ruler to not disappear.

The fix was to simply not use SSE's IReporter to report messages. It was providing absolutely no functionality (that I could find/see) that adding markers didn't do, except for the bug!

Also wrapped the marker creation code in a try-finally block to insure that we release the model no matter what.
EditorHelper.findEditorOfDocument should search all workbench windows
Removed unneeded code in the ModelParser

The code that's being removed was incorrect to begin with, and thus wasn't having any effect. The editor behaves as expected without it. I've found that the implementation of all the DOM stuff is used for DOM (aka HTML) validation. Thus, when adding HTML validation support is when this part of the implementation will need to be made specialised to be scala template syntax aware.
Removed usage of withCurrentEditor in structured editing code & fix type erasure problem in findEditorOfDocument.
Added SSE Template hovering into proper file.
Added SSE template validation into proper file.
Moved all SSE template lexical related classes into proper files.
Moved SSE hyperlinking into proper files.
Moved SSE template document/model classes into proper files.
Moved SSE template core classes into proper files.