added signin and sign out functionality