add signout implementation