added usernames and the ability to login with username.