Cache the per-request authenticated user so we never perform
the authentication procedure more than once per request, even if
there are multiple calls to getCurrentUser()