test(watchGroup): fix incorrect expectations

watchGrp.detectChanges() returns the number of changes and as such can
never be null
fix(directive-injector): wrong variable name in error thrown.

Add proper type annotation that would have caught the typo.

Closes #1397
feat(scripts): pick-pr

Closes #1394
fix(perf_api): updgrade the pkg minimum version to fix an analyzer error

fixes #1407

perf_api 0.0.8 contains an invalid const constructor which the type
checker ignored in dart 1.5.8 but throws on in 1.6. Using 0.0.9 fixes
this.

Closes #1408
feat(directive injector): DiCircularDependencyError -> _CircularDependencyError

And make _CircularDependencyError extends CircularDependencyError
so that catching CircularDependencyError catches any circular dep
error

Closes #1399
chore: update pubspec.lock
doc(pick-pr): Remove an obsolete comment
Revert "chore: update pubspec.lock"

This reverts commit a157cb2b6af63f3897692aa6a85e6ce0a15de948.

This commit did not pass Travis.
feat(directives): remove the @Controller directive

Completely remove the deprecated Controller directive.

Major update to the demos to use setRootContext (where applicable) and
to move to Components for the beefier demos (bouncing balls and form).

A temporary work around was required in demos (animation and todo)
so that rootContext have Map interface. The work arounds will disappear
after the context is set to the component.

Library changes were pulled out of the first commit in #1269.

Closes #1401
feat(scope): move domWrite and domRead from RootScope to Scope

Closes #1161

Closes #1341
chore(package.json): require newer karma-dart

This is needed for PR 1375.
fix: remove analyze warnings

Closes #1411
refactor: misc cleanup

Closes #1395
reflactor(parser): rename DynamicParser into Parser

Since there is only one implementation of the Parser interface, which is used for both dynamic and static deployments, calling it DynamicParser is misleading.

- Remove the Parser interface
- Rename rename DynamicParser into Parser
- Rename DynamicParserBackend into RuntimeParserBackend

Closes #1251
feat(urls): support relative CSS / template URLs in components

Example:
When defining a component called 'foo' in file
'/myproject/has/many/folders/foo.dart', prior to the change you would
do so thusly:
@Component(
   selector: 'foo',
   templateUrl: '/myproject/has/many/folders/foo.html',
   cssUrl: '/myproject/has/many/folders/foo.css'
)

The above is still valid, but now can also be defined rather more
succinctly as:
@Component(
   selector: 'foo',
   templateUrl: 'foo.html',
   cssUrl: 'foo.css'
)

A full table of what URLs will be changed/unchanged is below:
You Say:				Transformer replies:
'packages/foo/bar.html'			'packages/foo/bar.html'
'foo.html'				'packages/foo/bar.html'
'./foo.html'				'packages/foo/bar.html'
'/foo.html'				'/foo.html'
'http://google.com/foo.html'		'http://google.com/foo.html'

*Note  that as  shown any absolute paths you define will not be
bothered by the transformer, so if you have a templateUrl living at
<root>/foo.html, you can still reach it with '/foo.html'!

This feature is defaulted to an "ON" state, but may be turned off using the
added ResourceResolverConfig class.  This class is added for backwards
compatibility in case users are already using relative urls from the root,
or other strange urls that may break when relative url rewriting is turned on.
i.e.:
'foo.html' really should reference '<root>/foo.html'
This feature will eventually be deprecated in a future release.

through the addition
of the ResourceResolverConfig class.  We do this for backwards compatibility
in case users are already using relative urls from the root, i.e.:

'foo.html' should really reference '<root>/foo.html'.

Or other strange url definitions.  Eventually the backwards compatibility
feature will be defaulted to an "on" state.

To turn the feature off using the Config, bind a new ResourceResolverConfig
in your module:

module.bind(ResourceResolverConfig, toValue:
	new ResourceResolverConfig(useRelativeUrls: false));

*Testing*:
- e2e transformer tests can now be done on the sample application found
  in the test_transformers folder