This PR uses a new Karma plugin to enable vendor bundles in unit tests,
increasing rebuild performance.
On a medium size project rebuilds times were 15x smaller (16.5s to 0.9s).
Fix#5423
Removes the warning that would appear on new projects when running `ng test` due to there being no files inside `src/assets/`:
```
23 02 2017 10:45:33.751:WARN [watcher]: Pattern "D:\sandbox\master-project\src\assets/**" does not match any file.
```
Adds the flag 'serviceWorker' to angular-cli.json that enables support for @angular/service-worker.
When this flag is true, production builds will be set up with a service worker. A ngsw-manifest.json file
will be generated (or augmented) in the dist/ root, and the service worker script will be copied there.
A short script will be added to index.html to register the service worker.
@angular/service-worker is a dependency of @angular/cli, but not of generated projects. It is desirable
for users to be able to update the version of @angular/service-worker used in their apps independently
of the CLI version. Thus, the CLI will error if serviceWorker=true but @angular/service-worker is not
installed in the application's node_modules, as it pulls all the service worker scripts from there.
If the flag is false the effect on the CLI is minimal - the webpack plugins associated with the SW are
not even require()'d.
Closes#4544
This commit changes 2 things:
1. Changes remaining angular-cli package references to @angular/cli.
2. Where angular-cli was mentioned as a project name, it's been changed
to Angular CLI.
Where angular-cli was meant to mean the repository name, it's been left
unchanged.