chore(cleanup): Fix warnings in lib/tools

Fixes https://github.com/angular/angular.dart/issues/346

I made `Code` implement `Expression` and `DartCodeGen` and `DartGetterSetterGen` implement `ParserBacked` to eliminate the warnings, though it looks like a deeper refactoring would ultimately be better. There appears to be a viable split between creating an AST and creating callable objects.