git-checkout: improve error messages, detect ambiguities.