Refactor autorevoke data model for hibernation 3/3

Create two distinct live data objects depending on whether hibernation
is enabled or not. When enabled, the live data used for the view model
is unused apps that are also hibernated. When disabled, it uses unused
apps that are auto-revoked.

Bug: 181172051
Test: atest AutoRevokeTest
Test: grant runtime permission, run job, click notification and see that
the UX is the same
Test: add app to allowlist, run job, app is not auto-revoked

Change-Id: I1d39e3429cccc2c627d0b64e0a19fa3f65ab9d25
6 files changed