Only create one view per model, and cache that view.

When the original view code was written, we allowed multiple views per model.  Since that time, we've settled more on the concept of one view per model.  This change 'enforces' this constraint, and caches that view with the model so that it's easy to retrieve it.

I also deleted some code that removed the view, since it seemed redundant with the event handler set up in the widgetmanager.