chore(pubspec): pub get results to pubspec.lock
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'!

BREAKING CHANGE:

You must update relative paths to your templates and in ng-include's to
be relative to the component's library / ng-include'd file.

NOTE: This feature is defaulted to an "on" state.  To get back the old
behavior, you may disable this feature for your application.  This is
only to help you adjust to this change and will go away in a later
version.  Here's how you can get the old behavior:

```dart
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
fix(WTF): add back traceDetectWTF call in application start

Accidentally removed in previous commit.
chore(travis): custom merge pubspec.lock for g3v1x rebases

pubspec.lock changes will never really apply cleanly to g3v1x.  What we
wnat to capture, is whether Travis tests will pass if we apply the
pubspec.yaml changes to the g3v1x branch and then regenerate the
pubspec.lock file.  This commit inserts a custom merge driver for git to
ignore changes to the pubspec.lock file during merging to achieve this.
chore(travis): (fix) custom merge pubspec.lock for g3v1x rebases

Use the current version and not the ancestor version.  This means that
the merge driver has nothing to do except exist.
chore(travis): fail jobs that have a mismatched pubspec.lock

We expect that, for a clean checkout, running "pub get" will not update
the pubspec.lock file.  Any such updates should have been made along
with the corresponding change to pubspec.yaml or must be part of the
commit being tested.  Otherwise, that specific job should fail so the
author can resubmit with the updated pubspec.lock file.
chore(scripts): minor cleanup
docs(scripts): notes on karma sharding
chore(specs): minor style change
feat(mocks): change MockHttpBackend to define the assertion on flush.

Add new methods (`flushGET`, `flushPOST`, etc) to the `MockHttpBackend` class to allow defining assertions on flush. These methods add a new expectation and then flush all the pending requests until they find the one matching the expectation.

BREAKING CHANGE:

Unexpected requests are detected only when `flush` is called.

Before:

		backend("GET", /some"); //throws here if `/some` has not been defined

After:

		backend("GET", /some"); //no problem, just records the request
		backend.flush(); //throws here

Closes #900
refactor(tests): change tests to use flushGET instead of expectGET

Closes #1433
chore: git ignore /.pub