added full signout and signin functionality