Add ICachingAuthenticator with 'invalidate' method

This allows users of the authenticator to determine when the cache should be invalidated, if necessary.