Support Client Certificates & Transmission Except

Exposed the RestClient's ClientCertificates property so that etcetera
can now use HTTPS Auth.

Created a custom exception BadResponseStatusException.  This exception
will be thrown on Transmission errors during the RestClient's Execute.
Without this the ContentType hack that addresses Etcd issue 469 will
cause Transmission errors to be run through the Json Deserialization
process in RestSharp.  When this happens it attempts to de-serialize
invalid Json (the body does not actually contain Json) and the
transmission error is swallowed.  Without changing the EtcdResponse I can't think of a cleaner way to know what has gone wrong.

The exception will only happen when something horrid has happened (e.g. the
etcd server is not online, the client certificate is invalid causing ssl
handshake to fail, etc.)  In these cases I'd like to be able to catch
this exception in my calling code and handle it appropriately.