added username uniqueness validation
user can now log out, thus destroying the session