move edges (source, target) and nodes (parent)

closes #512 and #515