Add the ability to add aditional data into sessions

Currently the auth manager does not allow for adding any additional data to the login such as group names, permissions etc. Making it difficult to manage more sophisticated permissions than simply authed/not authed. This commit allows for applications to add this by adding the data returned from the request to the db into the result of the login request. This meta data can then be simply added to the db entry for a given user and it will be returned inside the result of a successful auth request. So all a person needs to do is for instance add a 'group': 'foo' to the users db record and this will be returned as part of the successful auth.

There is a risk to consider with the current implementation is if anyone has added private data to their users record, then this successful auth response will contain that private data. I am already explicitly removing the password field to avoid sending around the password unnecessarily. If it is felt that this scenario is probable enough that the behaviour of this pull request is too risky then I would suggest adding a whitelist of fields from the db that the user can configure to be returned. I am happy to do this work if you feel this is necessary.