ViewModelStore

An instance of ViewModelStore must be retained through configuration changes:
if an owner of this ViewModelStore is destroyed and recreated due to configuration
changes, new instance of an owner should still have the same old instance of
ViewModelStore.

If an owner of this ViewModelStore is destroyed and is not going to be recreated,
then it should call clear() on this ViewModelStore, so ViewModels would
be notified that they are no longer used.