Introduce CDM device presence base on UUID

1. Introduce a new API startObservingDevicePresence` that
able to observing the devices base on association id or
uuid.

2. Introduce a new request called DevicePresenceRequest allows
app to be able setUuid or setAssociationId. Not that,
caller can only use one setter. And only system app is able
to use setUuid.

2. Introduce a new callback that that system app
will be recieve when device is connected / disconnected.

3. Introduce a new Permission REQUEST_OBSERVE_DEVICE_UUID_PRESENCE
that with signature protection level.

4. Introduce a new ObservingDevicePresenceResult with
a new callback onDeviceEvent(ObservingDevicePresenceResult)

5. Deprecate the startObservingDevicePresence(MacAddress).

Test: cts
Bug: 316015619

Change-Id: I4e311866d7640218ed6dd9937911f984e88355ef
22 files changed