merge: build virtual base of multiple merge bases
merge: build virtual base of multiple merge bases

When the commits to merge have multiple common ancestors, build a
"virtual" base tree by merging the common ancestors.

stewid/libgit2,saurabhsuniljain/libgit2,stewid/libgit2,yongthecoder/libgit2,leoyanggit/libgit2,Tousiph/Demo1,Corillian/libgit2,joshtriplett/libgit2,joshtriplett/libgit2,stewid/libgit2,magnus98/TEST,leoyanggit/libgit2,Tousiph/Demo1,yongthecoder/libgit2,Tousiph/Demo1,KTXSoftware/libgit2,yongthecoder/libgit2,saurabhsuniljain/libgit2,saurabhsuniljain/libgit2,jeffhostetler/public_libgit2,joshtriplett/libgit2,magnus98/TEST,leoyanggit/libgit2,yongthecoder/libgit2,jeffhostetler/public_libgit2,Tousiph/Demo1,Corillian/libgit2,KTXSoftware/libgit2,saurabhsuniljain/libgit2,stewid/libgit2,Corillian/libgit2,jeffhostetler/public_libgit2,magnus98/TEST,magnus98/TEST,jeffhostetler/public_libgit2,leoyanggit/libgit2,saurabhsuniljain/libgit2,KTXSoftware/libgit2,magnus98/TEST,stewid/libgit2,yongthecoder/libgit2,saurabhsuniljain/libgit2,jeffhostetler/public_libgit2,KTXSoftware/libgit2,yongthecoder/libgit2,leoyanggit/libgit2,joshtriplett/libgit2,KTXSoftware/libgit2,stewid/libgit2,joshtriplett/libgit2,joshtriplett/libgit2,jeffhostetler/public_libgit2,Corillian/libgit2,magnus98/TEST,leoyanggit/libgit2,Corillian/libgit2,KTXSoftware/libgit2,Corillian/libgit2,Tousiph/Demo1,Tousiph/Demo1