Are we going to have multiple simulations in one instance of the application (makes it easy to do holding cells with different options then) or are we going to restrict one application instance to one simulation?
If we have multiple simulations we would need deal with multiple viewers and preference sets. We could create viewers that you can attach and detach from a simulation, and I guess a form with a list of preference sets that you can go and load, save, edit, and then some mechanism to assign a preference set to a simulation instance. Maybe have some options to duplicate them, so you can fire up another simulation with only some minor changes?