enable SSL socket connections to the backend

This lets you wrap the client connection with SSL given that the backend you're connecting to also speaks SSL.  

Also this patch lets you send other arguments to wrap_ssl.  For example, to require certificate validation and also use self-signed certs:

```python
args['use_ssl'] = True
args['ssl_opts'] = {
    'cert_reqs': ssl.CERT_REQUIRED,
    'ca_certs': '/Users/frank/certs/server.crt',
}
start_client(**args)
````