modelLoaded pulldown: manage loadModel action

Handle restoration of pulldown when loadModel actions
are used.
interactive ComponentConstructor(component, controller)

No longer pass scriptingAPI or model. These are now
requested from the interactiveController when needed
by the component.

If a previous model exists at start of modelLoaded
callback in component then previous observers are
removed first before updating local closure reference
to new model.