refactor copy-diffs, more tests and fixes

by “clobber” you mean override cleanly or mess-up?

(I understand the verb as “Destroy” but i'm not native ;)