Fix weird path problem with cygwin vim

On cygwin, the processing of root path is somewhat different from unix systems:
/ and // are considered different things, and vim's filereadable() will return true for paths beginning with //.
Thus the approach of simplify(currentpath . '/..') won't work since it will produce a // path when current path is /.

This pull request add a cygwin-specific fix for this problem, only with a special has("win32unix") flag to make it only affect cygwin vim (and maybe also vim under msys, which I doubt anyone really uses it).