fix($compile): don't use new with minErr

Someone wrote `throw new $compileMinErr(...)` when it should have been
`throw $compileMinErr(...)`. This caused a build warning.
feat(ngAnimate): complete rewrite of animations

- ngAnimate directive is gone and was replaced with class based animations/transitions
- support for triggering animations on css class additions and removals
- done callback was added to all animation apis
- $animation and $animator where merged into a single $animate service with api:
  - $animate.enter(element, parent, after, done);
  - $animate.leave(element, done);
  - $animate.move(element, parent, after, done);
  - $animate.addClass(element, className, done);
  - $animate.removeClass(element, className, done);

BREAKING CHANGE: too many things changed, we'll write up a separate doc with migration instructions
chore($animate): replace show/hide with addClass/removeClass
fix(ngInclude): $animate refactoring + use transclusion

BREAKING CHANGE: previously ngInclude only updated its content, after this change
ngInclude will recreate itself every time a new content is included. This ensures
that a single rootElement for all the included contents always exists, which makes
definition of css styles for animations much easier.
chore(ngView): $animate refactoring + transclusion & tests

BREAKING CHANGE: previously ngView only updated its content, after this change
ngView will recreate itself every time a new content is included. This ensures
that a single rootElement for all the included contents always exists, which makes
definition of css styles for animations much easier.
fix(ngAnimate): $timeout integration and cancel callbacks added
fix($animate): make animation onComplete callbacks async
chore(ngdocs): fix docs search to properly hide the X button when collapsed
chore(.gitignore): ignore npm-debug.log file
docs(tutorial): add that the test also creates a controller
docs(tutorial): add formatting

the string literal {{query}} was missing as it was not enclosed into ``
fix(animate): move forEach so it can be accessed as needed
docs(tutorial): mention the controller along the scope
docs(animate): add param name
docs($interpolate): add example for the provider
fix(docs): fix margin around nav-list items

Closes #3363
docs(interpolate): remove example e2e test that cannot run

We can't create modules in docs e2e tests as the injector has already
been created.
docs(*): fixed typos and ngdoc parameter names
test($compile): fix spelling error in assertion (ngAttr*)

The string 'test2' should be 'test3' as 'test2' has already been
tested with the previous assertion.
chore(bower): update to latest ng-closure-runner

This version does correct URL encoding of string parameters in the
production minErr asset code.