Get rid of most macro deprecation warnings.

This moves the "compat" class into 2 classes - 1 for 2.10 and 1 for 2.11 and uses the 2.10/2.11 specific methods for each. There is still a warning in Syntax for `TypeTree().setOriginal`, but I left it for now...