[!!!][TASK] Cache result of isAuthenticated in AuthenticationProviderManager
This change will calculate the result of the authentication in
authenticate() and respect the authentication strategy for the result.
The authenticate() method will be called lazily if not done before.
This is breaking since isAuthenticated() before would behave like the
"at least one token" strategy was used, even the strategy was set to
Releases: master, 2.0