* Add support for rustls as TLS backend
* Use a "use-*" prefix for the TLS features
* Only enable rustls if native-tls is not enabled
* Allows several TLS components to coexist
* Update docs for rustls mentions
* Enable all features on docs.rs
* Rename TLS feature flags from "use-*" to "*-tls"
* Make native-tls the default
* Move TLS related errors to a separate enum
* Add changelog entry about rustls support
* Fix wrong naming in main error enum
* Simplify docs about tls feature flag usage
* Replace Redirection error with a general Http error that owns the
response
* Make the default client connect function iterative instead of
recursive
* Add a limit to the amount of redirects a client will attempt to
perform
* The connect() function defined in this crate will automatically follow
redirecting responses.
* Adds Error::Redirection, which is a special case of Error::Http that
extracts the redirection target from the response headers, and stores it
in the error object. Client implementations that build upon tungstenite
can use this to implement redirecting.
* A catch-all solution for redirects is not possible due to the
abstraction transforming socket types to Read + Write, implementations
that use the client_* methods need to handle redirections themselves.