Support Cygwin; improve linux support

- Support for Cygwin's Vim.

- Better Linux support by changing gnome-open to xdg-open.

- Moved temp folder on MS-Windows from $appdata\vim\tmp to $temp.

- Improved readability and refactored code.