Set UTF-8 encoding for Git process.

Starting with version 1.7.10, Git uses UTF-8.
The input and output streams for Git must be set up with
the correct encoding.
Use -z option with git diff-tree.

When -z has been given, diff-tree does not munge pathnames and uses
NULs as output field terminators. This allows for secure parsing of
the output.

Quoted paths were not correctly interpreted as UTF-8. This avoids the
problem by not having quoted paths.
Merge branch 'master' into unicode

Only conflicts regarding extension method StreamWriter.WithEncoding vs
StreamWriter.WithUTF8EncodingWithoutBOM. I kept the more general
WithEncoding.
Unit test fix: run git instead of git.cmd

Recent Git version replaced the git.cmd script with an exe wrapper.
Running git works for both git.cmd and git.exe.
Fix line endings

Somehow the previous merge commit added incorrect line endings.
Test: verify correct commit message after clone

Verify that the commit message is stored correctly in the
CloneProjectWithInternationalCharactersInCommitMessages test.
New config reader for tfs remotes.
Unit tests for the configuration for a new tfs remote.
Add tests for bootstrap.
add '--with-branches' option to the clone command to clone a whole repository (trunk and branches)
Add an option --rebase on the 'pull' command
Merge pull request #254 from pmiossec/pull_rebase

Add an option --rebase on the 'pull' command
Merge pull request #255 from pmiossec/clone_with_branches

add '--with-branches' option to the clone command
Merge branch 'master' into unicode

Conflicts:
	GitTfsTest/Core/GitChangeInfoTests.cs
	GitTfsTest/Integration/CloneTests.cs
	GitTfsTest/Integration/IntegrationHelper.cs

Conflicts were because extra unit tests were added and existing unit
tests were changed in the unicode branch, and this was done before
the move to xUnit.
Merge pull request #204 from kgybels/unicode

Set UTF-8 encoding for Git process.
Just a little adjustment on trace when trying to read an Authors File
Add a 'labels' command to get TFS labels of a branch

Synthaxe is similar to 'fetch' command with '-i' and '--all' options...
+ Add an option `--with-labels` to the 'fetch' command to get TFS labels when fetching TFS changesets
Merge pull request #261 from pmiossec/trace_reading_authors_file

Just a little adjustment on trace when trying to read an Authors File
Add a control to permit rebase only when Working directory have no changes
Merge pull request #262 from pmiossec/forgot_pull_rebase_control

Add a control to permit rebase only when Working directory have no changes