merge: fix spurious merges for copies in linear updates
We make better use of contexts to accurately identify copies that
don't need merges.
Add a simple test and update other tests.
adding a
adding b
copy .hg/patches to .hg/patches.1
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
M b
a
b
merging with queue at: .hg/patches.1
applying rm_a
Now at: rm_a
b