Fix the client_preferred_next_protocols option

Was due to incorrect documentation before R16B03. Thanks Ingela
for finding it!
Improve behavior when losing the connection
Add gun_http

Support for HTTP/1.1 and compatibility with HTTP/1.0.
Add a debug function to send raw data
Fix a ws_loop/1 call
Add an interface to asynchronously wait for responses

The basic idea is that we do an async call and then optionally wait.
If we already have a monitor for this connection, then we can reuse
it across all await* calls, otherwise one is created automatically.
Change the error name when there has been too many retries

'gone' is more explicit than 'too_many_retries'.
Improve the HTTP/1.1 and HTTP/1.0 support
Update copyright years
NPN isn't supported on R15

We branch out and don't try to use NPN when the function
ssl:negotiated_next_protocol/1 isn't exported.
Fix crashes when Transport:setopts/2 returned an error

For some reason this only happened with SSL. I suppose the behavior
is a little different from TCP.
Fix a bug where the buffer was dropped in one chunked decoding case