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
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