Allow widgets to display more than once within container widgets.

I'm not convinced the added complexity is worth it, but after talking to @SylvainCorlay and thinking about it a bit, we should at-least rename `child_views` to something better, like `child_model_views` since it's not only supposed to be a list of child views, it's also supposed to be a mapping of `model.id`s  to views.

closes #5958