CreateCommit rewrited to is LibGit2Sharp
Some changes by comments
Ask Tfs server tfs branches only once
Retry rewrited to work on lower level

Workspace.Delete () can not be handled at a higher level
GetChangesets()  asks changesets by parts
ParseEntries()  called only when really needed
Garbage collection added to `clone` and `branch --all` commands
Improve finding commit for changeset number

Because commits can be shared across branches, it is better to do a single
search starting from the branches than to do a search for each branch
separately. The revision walking implemented in the git library will take
care of efficiently enumerating the graph, not visiting shared commits
multiple times.

Conflicts:
	GitTfs/Core/GitRepository.cs
`fetch all` output improved