Added ability to register different types of users