(#3136) - fix changes() when earlier winning seq

In the previous version of the changes() algorithm,
we were assuming that the winning seq was later than
all non-winning seqs, which isn't necessarily the case
when you've got conflicts. This fixes that.
tried to think of every `changes()` test I could, especially with the winning seq being earlier than the non-winning seq. but we could still stand to add more tests