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.
#!/bin/sh
hg init
echo "Is there an error message when trying to diff non-existing files?"
hg diff not found
echo "Is there an error message when trying to add non-existing files?"
hg add not found