If "make clean" on a new checkout causes diffs, you accidentally committed
one of the build products currently listed in "make clean", and you
should `git rm` it again.
If "make clean" on a dirty/built checkout causes diffs, then either
(1) the "make" process modified some tracked file which is not removed
by "make clean", i.e. either (1A) it is a build product which needs to
be `git rm`ed AND added under "make clean", or (1B) the build process
is modifying some source file, which is highly weird and shouldn't happen;
or else (2) "make" created some untracked file which is not removed
by "make clean", i.e., you should add that build product to "make clean".
The Travis build that uses "mymake" now does the same "mv" trick as Github CI,
to avoid having the executable sometimes named "./hyperrogue" and sometimes
named "./hyper". Why are these filenames different, anyway?
It still seems to work on MinGW mainly by accident,
but at least it's a lot shorter and clearer and more
portable at this point. We can start testing it in
TravisCI and then work on making it work "less by accident"
incrementally.