Use the new scan API for manual network search.

This implementation takes three situations into consideration:
1. Using old scan API via Phone (support pre-Pixel2 devices). The app
will first send network scan request via new API and then receive an
ERROR_UNSUPPORTED error since modem won't support it. It will then
fall back to the old API to start a network query again via Phone. Logic
flow as below:
https://docs.google.com/drawings/d/1_LCNe6XKsqk9rp55Ik8Kw_GaKl3OsdlkerPNb6oKEiI/edit?usp=sharing

2. Using new scan API via TelephonyManager before HAL1_2 ready. The app
will first send network scan via new API and then receive a list of cell
info. The results is invalid since they do not have operator info. So it
will then fall back to the old API to start a network query again via
Phone. Logic flow as below:
https://docs.google.com/drawings/d/1fhG6INoNW4tXUCuOrkMRmsPdBQ1wvH8-dfCmMz2-QbY/edit?usp=sharing

3. Using new scan API via TelephonyManager after HAL1_2 ready. The app
will first send network scan via new API and then receive a list of cell
info, which contains both signal strength and operator info. Logic flow as below:
https://docs.google.com/drawings/d/1D7Zj0iNs0g0Ur4cy3lbYxufH6Fu5nntPiRZDM3sYHg0/edit?usp=sharing

Bug: 63984327
Test: Basic telephony sanity
Change-Id: Ifebbac9965a40acaff0d50d32ca8603c72a6a77f
Merged-In: Ifebbac9965a40acaff0d50d32ca8603c72a6a77f
4 files changed