Make clock carousel extend ViewModel

Make clock carousel view model has the benefits:
1. view model scope can be used, so that we know what to create a new
   view model
2. Initial state is applied when new view model created
3. by making allClockIds we avoid redundently create many listeners for
   the clock registry

Test: manually test it works as what it is before
Bug: 278784119
Change-Id: Ie805725eee32e390c4442ccaea22a691b83ac106
4 files changed