Added tests and functionality for resetting a password
Fixed a problem in the API (server problems did not translate into JSON)
Fixed a problem where updating a person with extra data would lose the extra data
Changed retrieving a token from a POST to a GET request
Changed changing password so that it will check if the user inputted a existing email
Changed tests to be independant of MongoDB
Added in memory database classes for testing
Added specific test specification for MongoDB
Changed global to allow for test databases being used
Added language independant messages
Restructered packages and class names to be more meaningful
Added functionality for mailing reset URL to user
Added tests for handeling exceptions
Changed current functions to handle exceptions
Refactored the tests to be faster
Fixed issues raised by new failing tests
Seperated encryption methods into encryption class
Refactored Mongo database based classes to use reactive mongo
Refactored to put duplicated code in seperated classes for re-usability
Removed unused imports
Divided Portal in to two parts
 - One handeling all input requests (Responds in Json)
 - One handeling all user input (Responds in html)
Refactored Global
 - Accepts an encryption
 - No longer requires database name (now reads from config)
Refactored tests
 - Altered tests to reuse existing code