Login/Log out functionality. Issue #3.