Support for Windows.

Fixed issues with logging. The test_git_fat_no_dotgitfat test was
failing. Also there were problems with seeing log messages on
Windows. Always use logger.xxx() functions instead of the
logging.xxx().

Improvements to logging. Introduced the GIT_FAT_LOG_LEVEL and
GIT_FAT_LOG_FILE environment variables to ease debugging. Also
improved error detection in unit tests. Some of the errors may
be thrown by sub-subprocesses and the only way to catch them
is to check the log file for errors. This will catch problems
like the one reported in Issue #30.

Fixed 'Permission denied' issues when moving or deleting
files on Windows. Always use the new functions move_file() and
delete_file() when renaming or deleting file. In unit tests
also fixed a 'Access is denied' issue when deleting the temp
git repository directory.

On Linux files are opened in binary mode by default. But on Windows
the text mode is the default. Always specify "rb" or "wb" mode
when opening files for reading/writing. Additionaly it was also
required to change mode to binary for sys.stdin and sys.stdout.

On Windows rsync/awk tools are not available. It is required
to ship these tools. It is also required to ship a custom ssh
executable that works with rsync. These dependencies are
included in the Python Wheel binary package. Use the
win32/setup_wheel.bat to create a .whl package. This package
can be be uploaded to PyPI so that the pip package manager
can be used to install git-fat on Windows.

Fixed issues with deleting files that had been previously opened
for reading (and not closed). On Linux such code works fine, but
on Windows it throws exceptions. Avoid code such as this:

    with open(fname) as f:
        if get_digest(fname):
            delete_file(fname)

Fixed error when executing command "git fat". A help should appear,
but instead an error was thrown.

Fixed issue when git init.templatedir option is set (Issue #30).
Before running each test this option is unset and restored after
the test was completed.

The FileTypeTestCase.test_symlink_74bytes() won't be run on
Windows, as symbolic links are not supported by git on Windows.

Fixed issue with temp files not being deleted in the
GeneralTestCase.test_index_filter() test.
Yeah I'm still getting it.

```python
(git-fat) abraithwaite at nethack in ~/Projects/git-fat (pr31)
$ python setup.py test
running test
running egg_info
writing git_fat.egg-info/PKG-INFO
writing top-level names to git_fat.egg-info/top_level.txt
writing dependency_links to git_fat.egg-info/dependency_links.txt
reading manifest file 'git_fat.egg-info/SOURCES.txt'
reading manifest template 'MANIFEST.in'
writing manifest file 'git_fat.egg-info/SOURCES.txt'
running build_ext
GLOB sdist-make: /home/abraithwaite/Projects/git-fat/setup.py
py27 inst-nodeps: /home/abraithwaite/Projects/git-fat/.tox/dist/git-fat-0.3.4.zip
py27 runtests: PYTHONHASHSEED='1816049725'
py27 runtests: commands[0] | flake8
./tests/test_git_fat.py:49:1: C901 'check_log_file_for_errors' is too complex (11)
def check_log_file_for_errors():
^
1       C901 'check_log_file_for_errors' is too complex (11)
ERROR: InvocationError: '/home/abraithwaite/Projects/git-fat/.tox/py27/bin/flake8'
py27 runtests: commands[1] | pylint --rcfile=tests/pylint.cfg git_fat
py27 runtests: commands[2] | python -m unittest discover
..........
----------------------------------------------------------------------
Ran 10 tests in 9.418s

OK
__________________________________________________________________________________________________________________ summary ___________________________________________________________________________________________________________________
ERROR:   py27: commands failed
(git-fat) abraithwaite at nethack in ~/Projects/git-fat (pr31)
$ flake8 --version
2.2.5 (pep8: 1.5.7, pyflakes: 0.8.1, mccabe: 0.2.1) CPython 2.7.9 on Linux
```