added remove(Node *node) function