Refactor WifiScanner support for oneshot scans

Seperate oneshot scans so they are no longer implemented using
background scans and make WifiStateMachine use WifiScanner for single
scans.

This changes requires a few parts:
 1. Implement single scan logic in WifiScanningServiceImpl for merging
 and executing scan requests using the single scan native interface.
 2. Writing tests for the new code in 1
 3. Make supplicant start scans by using WifiScanner and when it
 recieves callbacks dispatch scan complete/failure messages.
 4. Enable HalWifiScannerImpl and SupplicantWifiScannerImpl to listen to
 supplicant scan events now that WifiStateMachine does not.

Bug: 26525037
Bug: 26895774
Change-Id: I7d03b43bbd2be396b3c772bc4bae681acce8eb7b
14 files changed
tree: 207b349128f3f634b883efe5c187a7191eb12fa4
  1. service/
  2. tests/