Refactor server lookup, new address module

Laying groundwork for non-blocking connect() and DNS resolution.  The
table.c/backendi.c should be just a data structure, and not be concerned
with DNS resolution and connecting to sockets. Pulled
open_backend_socket() code from backend.c into
handle_connection_client_hello() connection.c.

This required being able to return either: hostname, socket address, or
wildcard response when looking up the server. So introduced a new
address module to handle all IP/hostname parsing and displaying.

Removed util.c is it was only used for isnumeric() which was being used
only to validate ports, so it fit well in address.c.
BSD License
Fix memory leaks
Prevent uninitilized variable warning

In unlikly event listener_lookup_server_address() returns a wildcard address.
Merge pull request #33 from dlundquist/refactor-lookup

Refactor server lookup, new address module