Refactor KWallet access code
This merges the codepaths used to read and write the password into a
single wallet request that can be used for both. Existing
functionality, which satisfies a pending read password request with a
write password request is retained.
This prepares the code for introduction of storing the OAuth2 tokens
in the wallet.