Prevent fetching already fetch changesets from already initialized branches

by removing branches when the changeset of child branch
is alredy found in the repository
Fix crash when parent tfs is not found

because the branch is a pure git branch
Merge pull request #671 from pmiossec/fix_crash_list_empty

Fix crash when parent tfs is not found
Merge pull request #675 from pmiossec/improve_init_when_renames

Prevent fetching already fetch changesets from already initialized branches
Some silly people could add changes when renaming a branch
Detecting an branch rename changeset
Process changeset when with new branch (instead with old one)

Ignore rename changeset when discovered because
we want to process it as a changeset of the renamed branch.

This way, if changes are made (other than the branch renaming),
there will be fetched in TfsHelperBase.GetChangesets()!

Before that change, there would have been not fetched
because the tfs path was the one of the old branch but
the changes belong to the new renamed branch path!
Manage case where the first changeset of a clone is a rename changeset
refactoring