test: wrote save and update tests
fix: set updatedAt after cloning prevTarget to curTarget
test: changed example schema/sourceToIdPieces for clarity
test: added tests for reject cases
fix: reject on unchanged target