Reuse remote ref construction logic from clone
Move the fetch logic from porcelain.clone into porcelain.fetch to
fix issues with creating refs for the remote in porcelain.fetch, and
just let porcelain.clone call porcelain.fetch for this action to
avoid code duplication.
This should mend the failing tests added in the parent commit.