Fix #33: Require -c when creating a RM from a headless checkout

Now calculating the head and references to push is much smarter, we
learned the difference between having only the hash of the head and
having a branch name too, so we can make better pushes and report better
errors when a needed branch name is missing.