User roles management

+ Refactored Roles management
+ Logins are now lowercase
+ Added unit tests for User