Support git describe versioning on windows and also one less subprocess call. Refs #3461.
Don't fail on Windows if git is not installed or not on `PATH`.
Mimic `WindowsError` in linux to avoid errors.
We can just catch `OSError`.

See http://mail.python.org/pipermail/python-list/2009-November/558704.html
Improved git describe exception handling.

Previously we were catching the same exception in two places because on Windows the `child_traceback` attribute is not set on the exception, so, the initial exception catching we had was just working properly on Linux. Now we just check for the proper `errno` value, if it's not 2(The system cannot find the file specified), we still raise the exception so we can properly fix and handle it.
Merge pull request #3465 from s0undt3ch/hotfix/git-describe-single-call

Support git describe versioning on windows and also one less subprocess. Refs #3461.