gitlab_projects: Allow updating default branch with update_head()

gitlab-projects now accepts a command called update_head which will
first determine whether the provided branch is a valid ref, and if so,
will change the HEAD of the branch to use it as the default. Changing
this affects the branch that a new clone will fetch if no branch is
explicitly specified on the command-line.