Fix kernel detection for cygwin

Like MinGW, Cygwin uses all caps for kernel name.
Supplement editqf with quickfix-reflector

They conflict: editqf maps modification keys, but quickfix-reflector
allows you to modify the quickfix. So prevent editqf from mapping any
keys and only invoke it manually.

Currently, I use editqf to remove lines from the quickfix (instead of
QFilter) and to fix paths (msbuild refuses to provide full paths in my
loose build).

quickfix-reflector also allows you to directly remove lines from the
quickfix. I'm not sure if you can edit paths. It also allows you to edit
the matching part of the file (so you can do a project-wide search and
replace).

Unfortunately, I can't replace editqf yet.
Prefer filelist over .git for ctrlp

Since I only generate a filelist when the alternative sucks, prefer it
over the alternative.
Fix unintentional permission changes on Windows

Many of my git commits show file permissions changed from 644 to 755. I
don't want this. It appears to be caused by the way vim writes files: It
uses backupcopy=auto by default which seems to do take the "no" path.
According to the docs, it renames the file and writes a new one -- so it
moves the edited files away and creates a new file with your modified
contents. For some reason, it doesn't inherit the file permissions
(probably because they don't normally exist in Windows -- they're only
visible through cygwin).

Using backupcopy=yes fixes this. It also apparently fixes overwriting of
symlinks.
sub: Visual mode fixes for hiinterestingword