unbundle: extract checkheads in its own function
We are going to refactor the unbundle function to have it working on
a local repository too. Having this function extracted will ease the process.
In the case of non-matching heads, the function now directly raises an
exception. The top level of the function is catching it.
all()
draft()
::tip
draft() and ::tip
0::tip
roots(0::tip)
author(lmoscovicz)
author(mpm)
author(lmoscovicz) or author(mpm)
tip:0
max(tip:0)
min(0:tip)
0::
min(0::)
roots((tip~100::) - (tip~100::tip))
::p1(p1(tip))::