Implement Angular services for LoopBack resources

Introduce a new service LoopBackResource that patches $save from
ngResource to call upsert (PUT) instead of create (POST).

Extend services.template to generate client methods for all shared
methods available on all models.
Capitalize the name of the Model $resource factory

Make sure the factory names start with a capital letter, regardless
of what's the casing of the first letter of the server model name.

I.e. the Angular resource is `User` even if the server model is
called `user`.
Implement lb-ng, the CLI tool
Implement lb-ng-doc, the CLI tool for docs
Add @ngdoc comments to the generated services code
Support authorization & accessToken

Add LoopBackAuth service that preserves the access token.

Add response interceptors to User.login and User.logout that set/clear
the token stored in LoopBackAuth.

Add a global $http request interceptor that adds Authorization header
having LoopBackAuth.accessToken as the value.
Speed up tests accessing User.password

Decrease User.settings.saltWorkFactor in order to speed up the tests.