Add the secondary provider hand-over logic

This commit adds the support for a secondary provider in ControllerImpl
and the logic for enabling / disabling providers as events are received.

This commit modifies / adds unit tests in ControllerImplTest to exercise
the new behavior.

Bug: 152744911
Bug: 149014708
Test: atest services/tests/servicestests/src/com/android/server/location/timezone/
Change-Id: I722baa3b4146a40e7912d73e7d91b5f907677911
4 files changed