app: chain up unconditionally gimp_container_entry_clear_items()

so the parent implementation can clear the item hash table.
app: GimpContainerTreeView: keep a reference on tree_view->model

during the lifetime of the widget. Leaving that up to the GtkTreeView
was working for mysterious reasons even during destruction of the
widget. It's safer and cleaner this way.
app: make gimp_container_view_remove_container() more robust

Don't special case on view_iface->model_is_tree and always run
gimp_container_view_remove_foreach(), also on the view's toplevel
container.  Run gimp_container_view_clear_items() anyway on the
toplevel as an optimization, but with a big comment. This makes all
views (on list *and* tree models) behave the same way, and makes
view_iface->model_is_tree practically obsolete, will remove it later.
app: implement picking any image or layer in GimpPickableButton/Popup