Refactor initializing of DesktopRepository.

This introduces a new class and an interface to initialize the
DesktopRepository. Also fixes the issue when tasks are marked as not
visible when moved outside of desktop and device is rebooted.

Test: atest DesktopRepositoryTest
Test: atest DesktopRepositoryInitializerTest
Fix: 375396271
Bug: 365725441
Flag: com.android.window.flags.enable_desktop_windowing_persistence
Change-Id: I5e1d8a103111bf3b66fe1c8e24768ea39d6e65aa
11 files changed