feat(webapps/authentication): expose current user via resource

Current user (server-side) may now be queried via the
UserAuthenticationResource.

related to CAM-1143
refactor(webapps/authentication): rewrite client-side authentication

Align authentication handling for all applications:

- authentication is now handled by newly created AuthenticationService
- AuthenticationServiceProvider#requireAuthenticatedUser must now be
  used in a controller to resolve the authenticated user prior to any
  controller action. The new pattern is:

    module.config([ '$routeProvider', 'AuthenticationServiceProvider',
           function($routeProvider, AuthenticationServiceProvider) {

      $routeProvider.when('/some-url', {
        templateUrl: 'some-tpl.html',
        controller: SomeController,
        resolve: {
          authenticatedUser:
            AuthenticationServiceProvider.requireAuthenticatedUser,
        }
      });
    }]);

  This makes sure that the authenticated user is always fetched
  from the server (unless it is already loaded) and publishes the
  user name via the `authenticatedUser` local.

  This also fixes various raise conditions that could occure when
  switching in between applications on fast app servers.

Closes CAM-1143, CAM-1155
Merge branch 'master' of github.com:camunda/camunda-bpm-platform