Multiple windows

This branch adds the About window, support for invisible UI, and unregistering of all updaters before exit.