handle switching branches better & dealing with creating new remote tracking branches, or reusing current branches