added guest class to support it
changed the user class for supporting