Usermanagement

@rcrichton  Please have a look at what I have done here with user management, I have added the requested tests as well.
I think this function should be called `saveUser`. `saveClient` has another meaning in the client functionality of the OpenHIM.