bug fix for net.socket.close(), add node.input node.output api