Introduce default credentials

Abstract Credentials, providing `UsernamePasswordCredentials` and `DefaultCredentials`.