add hasAccessToken function; fix bug with not deleting expired access token