Fix GUI startup problem in fedup.commandline

The check for the SOURCE arg traces back in GUI mode because there's no
args.clean (because the gui doesn't handle --clean).

But also: the GUI doesn't require a SOURCE arg. So skip the rest of that
check in GUI mode.
Handle None from _downloadPackages (#949725)

YumBase._downloadPackages returns a list, unless it finds no updates, in
which case it returns None. Convert this return value to an empty list
so that the value can always be converted to a set.
Handle KeyboardInterrupt during download (#961955)

FedupDownloader.download_boot_images checks for IOErrors that are raised
as KeyboardInterrupt in older versions of yum.urlgrabber. This change
adds the other half of the conditional: if a KeyboardInterrupt is raised
and a newer urlgrabber is in use, raise the exception as-is.
fedup.util: add missing 'log' variable (#966841)

fedup.util didn't have any way to log anything, but rm_f wanted to log
(and ignore) failures, so if it couldn't remove a file you'd get a
traceback instead of a log message. oops.
log creation of module dir

Also, a minor cleanup for an unneeded double call to kernelver()
Umount ISO image before raising SystemExit(1)

When ISO file is not the required DVD install, we should umount the mount point
before raising the exception.

Fix bug https://bugzilla.redhat.com/show_bug.cgi?id=981076
clarify "instrepo not found" error (#980818 et. al)

The existing error message didn't make clear that you probably just need
to try again later ('cuz the mirrors are overloaded and/or you're
jumping the gun on the release).
Update TODO
README: add details about network upgrades

This should be helpful for repo maintainers and/or anyone else who is
curious/confused about how fedup finds the repos and images it uses.
Merge pull request #7 from mopsfelder/umount-iso

Umount ISO image before raising SystemExit(1)
Merge branch 'master' of https://github.com/wgwoods/fedup