Called by the pyev watcher (self.read_watcher) whenever the socket
        is readable.
   
        This means either the socket has been closed or there is a new
        client connection waiting.

def _readable(self, watcher, events):
        """Called by the pyev watcher (self.read_watcher) whenever the socket
        is readable.
   
        This means either the socket has been closed or there is a new
        client connection waiting.

        """
        protocol = self.factory.build(self.loop)
        try:
            sock, address = self.sock.accept()
            connection = Connection(self.loop, sock, address, protocol, self)
            self.connections.add(connection)
            connection.make_connection()
            logger.debug("added connection")
        except IOError as e:
            self.shutdown(e)