renamed branch : keeping the last "renamed" merge is important when no root found (with want is supposed to be the root branch)

In this case, we encounter a renamed branch...
Correct UnitTests
Move InitBranch() in the GitTfsRemote (to be able to init one from there!)
write what should be done...
being able to fetch until a changeset is reached
Retrieve also deleted tfs branches if needed
Create on the fly the missing remote (with fake Sha1 for the moment)
Fetch just changesets needed (until merge changeset)
Find the sha of the root changeset of the tfs branch to create
Before initialising a new branch, verify that it has not already been done
better way to find if changesets fetched
get TfsRemotes if branch already initialized