Add BluetoothRouteManager (multi-hfp part 2)

This adds BluetoothRouteManager, a state machine class that manages
which HFP device is/should be active during a call. It handles:
* requests from the rest of Telecom to turn Bluetooth on/off
* connecting/disconnecting from individual HFP devices
* fallback in the case of disconnections or connection failures
* informing Telecom of Bluetooth device connections and disconnections.
See design document for details.

Test: added unit tests
Change-Id: I4deea4376e735ef3975544efaadef1c3045030ca
2 files changed