When reading branch use active branch instead of first branch.
This allows us to interact with whatever is set as the current active branch instead of being limited to only the first branch (master). Useful for creating a branch from somewhere other than master.
Limited in its usefulness as I believe git only allows switching branches in a non-bare repositories and most trees being branched from are bare repositories. Also requiring the source repository to switch its active branch is pretty intrusive. But something is better than nothing.