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...
Maybe I've named it badly, but it's meant to be the function which runs when link is run. The code is in there rather than directly in the `getDirective` function so you can override the behaviour when extending.