Added tests for class-based traversal optimization

I added some tests for optimized traversal to verify that the class extraction matches the same stuff as what is matched by the patterns and the tests actually found a few issues! One should be careful when extending the optimizing traversal macro since all sub-type classes must be captured by the optimization.

It would be a good idea to supplement these tests with more standalone scala sources in macros/test-resources if you have some lying around to make sure we catch all possible tree types. The tests can be extended to the new resources simply by modifying the MacroTest.verifyMatching method.