Simplify Makefile so that it does not create cf-upgrade-*.o objects.

The side-effect is that autoconf complains that we changed user-defined
variables. That is not true, because CFLAGS, CPPFLAGS, LDFLAGS are
defined by our configure.ac, because we blatantly ignore recommendations
at:

http://www.gnu.org/software/automake/manual/html_node/Flag-Variables-Ordering.html

The proper thing would be to empty the AM_CFLAGS etc options. But we
first need to refactor our configure.ac to not replace CFLAGS, and then
adjust the rest of Makefiles,
Ugly code has ugly bug.
Merge pull request #1848 from jimis/master

Windows cf-upgrade self-exec fix.