wip #100, abstracting the merge algorithms in ComplexTextChange