'Remove a node from the hierarchy
@param node_id: the node ID'

def remove(self, node_id):

    theset = self.__theset
    if (node_id in theset):
        node = theset[node_id]
    else:
        return False
    parent_id = node['p']
    if parent_id:
        parent = theset[parent_id]
        parent['s'].discard(node_id)
    del theset[node_id]
    return True
