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 base
abort: cannot delete applied patch c
Now at: b
a
b
a
b
series
status
Now at: a
a
b
series
status
1 New patch: a
0 base
abort: cannot delete revision 3 above applied patches
f
4 New patch: f
3 New patch: e
2 New patch: d
1 New patch: a
0 base