Introduce JobRestrictions for JobSchedulerService

Introducing a JobRestriction class - an abstraction for imposing
additional restrictions regarding whether JobSchedulerService jobs
should schedule a particlular job based on the state of the
system/device.

Bug: 133217178
Change-Id: I497ada3708ca1bb20d1acf4ec674cc5e0e0f201c
4 files changed