Support for hostname-based bind() in addition to interface-based bind()

This adds a new parameter, "host", to lws_context_creation_info. If it's set, we look up an address to bind to using getaddrinfo(). This works on Windows too, and it's useful for binding to localhost in a platform-independent way.
New LWS_CALLBACK_SOCKET_READ callback for external protocol handling

This patch adds a new callback which makes it possible to intercept received socket data before any of libwebsockets parses it. I'm using this in Fadecandy to serve multiple protocols on the same socket, with an automatic protocol detection phase.