Don't exit_err on a download_cache_packages call, let the calling program
handle that its own way
Improve the major update functionality. Now we will pre-cache all the packages / update
data first, then start the install of both world + packages at the end.

If it fails at any step, it will roll-back the update, undoing changes to PKGNG