Initial attempt to make extendable login form directive

So as part of https://github.com/incuna/roche-asthma-phonegap/issues/161, I need to extend the basic login form functionality to do additional things once login is complete. 

I could add a simple event, but I've also faced needing to change some different login requirement on other projects, so decided to see if there was a better way to extend the directive.

@maxpeterson @perry @henrahmagix What do you think of this approach to making directives extendable? Essentially the directive code is moved to a service object with many functions, which the directive imports and runs.

If the app needs to make any changes, it can define a new directive which imports the service and changes only the functions it needs. Like so:

```
    # default directive provided by angular-token-auth
    auth.directive('loginForm', [
        'authLoginFormFactory',
        function (authLoginFormFactory) {
            return authLoginFormFactory.getDirective();
        }
    ]);

    # customised directive provided by specific project
    auth.directive('appLoginForm', [
        'authLoginFormFactory',
        function (authLoginFormFactory) {

            //extend original directive
            var directive = angular.extend({}, authLoginFormFactory);
            directive.loginFinally = function () {
                authLoginFormFactory.loginFinally();
                // your own extra code goes here
            }

            return directive.getDirective();
        }
    ]);
```

Might need some tweaking so that `this` points to the right object...
Yeah I think this should be moved, as it only executes once the first time the directive is loaded as a dependency. I left it here for the moment as I wanted to only change the functionality related to extending, but I think this should be in a `module.run()` or somesuch?