Pub transformer for automatically creating static type factories.

This adds a pub transformer that allows applications built with pub build or pub serve to automatically switch between dynamic and static injection.

Generated code can be viewed by:

- go into the `test/transformer` directory
- `pub build --mode=debug`
- `less less build/web/packages/di_test/generated_static_injector.dart`
- `less build/web/main.dart`