add shell/cygwin/mintty for cygwin on windows.
use vim for git for sake of portability.
add logic for determine current platform.