style(License): update copyright year

Closes #6090
chore(Gruntfile.js, package.json): use load-grunt-tasks and move grunt-contrib-jshint into devDependencies

Closes #6085
fix(mocks): always call functions injected with `inject` with `this` set to the current spec

Currently when a function is injected inside of a test we set the context to undefined which
is a bug.

Closes #6102
refactor(mocks): simplify the  implementation
fix($compile): link async+replace element transclusion directives with comment element

Previously, element transclusion directives would not receive a comment node in their
link functions when they were the root of an asynchronous replace template. This would
cause duplicate elements to appear in an ng-if expression within ng-repeat.

Closes #6006