assorted connection improvements mostly around auth

- validate keys for connection arguments
- properly support url-encoded login information in URL
- add support for :user and :password arguments to connection
- provide a set_authorization_header to update the header after the fact
- add some missing documentation on valid params