Respect the mainline of the merges

Normally the 1st parent of a commit is the branch we're merging _into_,
so if you keep this on the left then you can always read a merge as
right-to-left. Previous it seems to be a bit random.

By comparing the position a 'lane' in the 'lanes', the earier a lane is
created, the more priority it has.
Use the same color for every long-runing lane
Merge branch 'feature/respect-merge-mainline' into develop
Merge branch 'master' into develop