Allow port to be nil, this permits the use of UNIX socket backends

This change allows a UNIX socket to be specified as a backend instead of a TCP socket by omitting the port number. This follows the behaviour of event machine and is particularly useful for HTTP load balancers.