When calling git any error messages should be suppressed (e.g. if an directory
is not inside a git repository).
Closing the stderr output when calling `IO.popen` works fine on POSIX systems,
but on Windows it does not and spits out a warning for every invocation:
```
git.rb:44: warning: cannot close fd before spawn
```
Fixes#517.
On Unix systems the encoding of file names is specified by the user via the
locale settings.
In order to avoid encoding problems simply read file names in ASCII 8 bit
encoding and try to convert to the external encoding while replacing undefined
characters.
Also, does not show an icon if the external encoding does not support it and
shows a `=` instead of a check mark for git status.
Fixes#352.