chore(changelog): updated changelog for 0.9.3
chore(release): update pubspec.yaml for v0.9.3
fix(doc): NgShadowRoot => NgShadowRootAware
chore(style): merge separate ifs into if-elses in filter.dart
chore(todo demo): Explicit 'return null'
chore(cleanup): Fix warnings in lib/tools
chore(parser): remove locals and replace with ScopeLocals

Closes #365
chore(upgrade): Dart VM version: 1.0.0.10_r30798
feat(template_cache_generator): simple template cache generator
chore(parser): Auto-detect dart version (stable/dev)

Closes #366
fix(parser): pass analyzer v1.1.0
fix(ng_model): Disable a test that did not pass in content_shell
chore(expression_extractor): default package-root when not provided.
fix(scope): Also check for UnimplementedError when reflecting on source
chore(repo): git pre-commit hook script
fix(expression_extractor): fixed package roots
perf(scope): Make the digest loop easier to optimize by splitting it into smaller
and simpler methods.
perf(scope): Compute perf counters as part of the fast dirty check if possible.
chore(scope): Add comment to explain why we don't always stop at the last dirty watch.
fix(selector): the required attribute should properly work with ng-required