add 'error' event to net.listen so that listen errors don't kill the process (which is the default behavior in node)