Teach Listener to accept IPv6 peers

The `getpeername` method on the socket object returns an address of the form corresponding to the address family of the socket. For AF_INET and AF_INET6 this is always a tuple, and the first and second elements of the tuple are the host address and port number respectively.