GUI now uses the new Upgrade() stuff, also copied the exception handling code from command-line