prefs: move preferences to an external window
This moves the preferences to an external window instead of using a perspective within the parent window. This useful for couple of reasons: * It allows us to use the preferences outside of the workbench such as during the greeter phase. * It allows us to destroy widgets when they aren't visible. There are lots created in preferences, so this is a sort of nice thing from a memory usage standpoint. * Reduce the time it takes to open a project since it would add the preferences as part of that phase.
Showing with 46 additions and 58 deletions