Merge two versions of the same base file. Returns the resulting merged
file if the boolean is true. If the boolean is false, there is either
a merge-conflict or an error. In theory, this algorithm should never
return an error (if so, feel free to open an issue).