Skip fetching merged items without changes from TFS
`FindCommitByChangesetId` cache added
Fix for #574. If multiple changesets are found in parent tree, the latest changeset will be selected.
Let auto selection of remote (`-I`) works in empty repository

Using -I option now works when `init` a repository (instead of `clone`)
and when there is no commit (or just plain git commits).

- take the only one when only 1 tfs remote found (that should be `default`...)
- throw an error when there is no tfs remotes found (not a git-tfs repository!)
- threw an error if there is more than one branch (that should never happen
except if the user add manually remotes in the .git/config file)
Merge pull request #560 from pmiossec/autoselect_remote_with_empty_repository

Let auto selection of remote (`-I`) works in empty repository
Refactored changeset variable name in TfsWriter.WriteWith.
Merge pull request #569 from KindDragon/changeset_id_cache

`FindCommitByChangesetId` cache added
Test crash fixed
Merge pull request #583 from KindDragon/changeset_id_cache

Test crash fixed
Merge pull request #568 from KindDragon/improve_fetching_merge_changeset

Skip fetching merged items without changes from TFS
Add an help message...
Better management of GitTfsException
Better error reporting
 Better error management when command merge fail
Prevent a first GC when not needed

After first action, GC is always launch (even if not needed)
because the counter has never been set.
bootstrap automatically the remote we are working on if needed
Extract a Bootstrapper class.
Unit test for Autobootsrap when using -I option

Auto bootstap 'tfs/default' for first remote created
Unit test for Autobootsrap when using -I option on a branch

Auto bootstap 'tfs/default' for first remote created
Auto bootstap 'tfs/branch' for second remote created

Extand IntegrationHelper to be able to create a more complexe test case...
Unit test for Autobootsrap when using -I option on a merge commit

Extand IntegrationHelper to be able to create a more complexe test case...