implement earlier completion of garage mode

- also improves synchronization
- fix possible race when power state change happens often
- fix no onPowerOn call for initial power on
- add unit testing for CarPowerManagementService

bug: 26718816
Change-Id: I0c7085caa595675c70c1bd99c3db5b7f89d1edbf
7 files changed