These changes are needed now that `addNode` * wants to preserve circularity * automatically remove duplicates * range checks index argument (can't call it with -1 anymore)