Introduce SshAgentCredentials, SshUserKeyCredentials and SshUserCredentials.
Introduce AuthenticationException.