Don't repaint model view before layout.

[#57544976]

Previously, the MD2D view was (confusingly) repainted multiple times before the semantic layout had computed a size for the model container. That was because the model initialized its model listeners immediately when it was instantiated, and because the model listeners could call methods which required svg elements to have been rendered, it became necessary to render the view immediately on load. (Additionally, these extraneous renders triggered a Firefox bug which caused [#56959632] a failure to load certain models in Firefox. The previously-required workaround for this problem has now been removed.)

To eliminate this pattern, there is now a ModelController method called 'initializeView' which must be called after layout completes, but before the first view update. Calls to repaint and resize which occur before the initializeView are ignored (as they should be, because their effect on the view never becomes visible, and repainting/resizing should not have side effects that models or scripts care about.) The initializeView method is also able to take the place of the ModelController's 'modelInDOM' method which was in practice only used in Energy2D.

It so happens that Energy2D previously converged on a similar solution of ignoring calls to repaint/resize before the renderer was setup.

Additionally, the model container's bindModel no longer causes a view repaint, as it is the responsibility of the caller to call initializeView again when it knows the model has been completely set up. This prevents multiple repaints on model load. The interactivesController currently calls initializeView correctly when reloading a model or loading a new model.
Energy2D renderer: fix some typos
Energy2D renderer: harmonize w/MD2D renderer

Related to [#57544976]

isSetup instead of beforeSetup