Split project into more modular parts

At the moment, to include the project, you need to include all the files 

```
<script src="bower_components/angular-registration/registration/scripts/registration.js"></script>
<script src="bower_components/angular-registration/registration/scripts/templates.js"></script>
<script src="bower_components/angular-registration/registration/scripts/routes.js"></script>
<script src="bower_components/angular-registration/registration/scripts/services.js"></script>
<script src="bower_components/angular-registration/registration/scripts/controllers.js"></script>
<script src="bower_components/angular-registration/registration/scripts/directives.js"></script>
```

But you can't choose which parts to use in your project. If you only need a small part, you end up with lots of extra code and unwanted routes in your app.

e.g. Use case is the current project I am working on requires a password-reset, which I'd like to use from here to avoid duplication, but it shouldn't allow user registration and doesn't have user profiles.

How do we feel about making this project more modular, so that you can import the parts you need? Something like:

```
<script src="bower_components/angular-registration/registration/scripts/user-core.js"></script>
<script src="bower_components/angular-registration/registration/scripts/password-reset.js"></script>
<script src="bower_components/angular-registration/registration/scripts/registration.js"></script>
<script src="bower_components/angular-registration/registration/scripts/profile.js"></script>
...
```

One JS file could contain all the relevant code (e.g. password reset controllers, directives, services etc.), or we could split it even further and have a folder per module with separate files for each as with the current system, but that will probably be a lot of unnecessary files.
We repeat variations of this a lot in our gruntfile. I feel like it should be a separate npm package (not in this PR though)