Add tests for {active, once} for both TCP and SSL
Add the 'ranch_transport' behaviour

At the same time we make the 'port' option optional, defaulting to 0.
Add the 'ranch_protocol' behaviour
Add initial Ranch guide
Update version to 0.4.0
Add the {nodelay, boolean()} option controlling TCP_NODELAY

Enabled by default.

A comprehensive explanation about TCP_NODELAY and the Nagle algorithm
can be found at http://www.stuartcheshire.org/papers/NagleDelayedAck/
Small README fixes
Allow passing the 'verify' option in ranch_ssl
Allow IP tuples and more when connecting transports
Fix Markdown in the guide
Add two values to Ranch application for private use
Better markdown in the README
Error out if Ranch can't be started in the test suite
Add "SSL client authentication" chapter to the guide
Small clarification on the last ssl_auth snippet
Fix typespecs for Transport:send/2
Add Transport:sendfile/2 support

Uses file:sendfile/2 for TCP, a fallback function for SSL.
Improve guide on listening on privileged ports

Making people happy one IRC channel at a time.
Return {error, badarg} if start_listener got a bad transport module
Add {socket, Socket} transport option, for accepting on existing sockets