Semantic highlighting tests

This adds a test suite for semantic highlighting.  I found some problems I didn't know how to fix easily, so I left them as ignored. Also the tests document a few minor issues.

It turns out that parsing scala trees is hard :-)  If we want to make improvements, we can get help from scala-refactoring's tree parsing utilities.