perf(lexer)

Performance
==============================

New code is 1-10% faster depending on input.

Dart VM - Old

ident: => 1,891,803 ops/sec (1 us) stdev(0.0819)
ident-path: => 2,984,756 ops/sec (0 us) stdev(0.15266)
num: => 1,764,064 ops/sec (1 us) stdev(0.25551)
num-double: => 854,575 ops/sec (1 us) stdev(0.06801)
string: => 1,930,552 ops/sec (1 us) stdev(0.17848)
string-escapes: => 594,071 ops/sec (2 us) stdev(0.10721)

Dart VM - New

ident: => 1,963,962 ops/sec (1 us) stdev(0.09518)
ident-path: => 3,175,271 ops/sec (0 us) stdev(0.18999)
num: => 1,981,652 ops/sec (1 us) stdev(0.038)
num-double: => 915,930 ops/sec (1 us) stdev(0.05047)
string: => 2,038,472 ops/sec (0 us) stdev(0.09634)
string-escapes: => 636,263 ops/sec (2 us) stdev(0.02275)
bug(lexer): Fixed regression.
fix(expression extractor): Fix and test
fix(expression extractor): Add a forgetten file
feat(scripts): automatic way of generating changelog.MD
chore(release): v0.9.4
feat(directive): Add ng-attr-* interpolation support
feat(directives): Add support for contenteditable with ng-model
chore(warnings): Fix static warnings in parser generator and compile perf test.
chore(lexer): Lex a.b.c as three individual tokens
feat(mock): support for JSON in HttpBackend

Closes #236
fix(scope): honor $skipAutoDigest on non-root scopes

Close #391
fix(docs): correct typo
chore(contributing): added contributing instructions.
chore(contributing): fix typo
docs(Scope): complete missing documentation for scope methods/properties

Closes #287
chore(test): fix analyze casting issues on ng_model_spec.dart
feat(forms): provide support for controls and state flags
feat(forms): add support for validation handling for multiple error types
feat(forms): provide support for parent form communication