Shared key chain

Full support for the shared keychain.
Removed the asynchronous and in-memory cache. 
All cache operations are performed directly from the keychain
Fixed a bug with ADFS where requesting a token with userId fails due to userid mismatch.