Add a failing test-case for #72
Tentative fix for #5

Not totally sure this is the best way to do it, but it seems to be ok.

Basically, when multiple lowest common ancestor exists, we merge them
in sequence using 3-way merges. Then we use the resulting state as the
common ancestor for the current 3-way merge.