Support dynamic input mapping

In addition to static input mapping with IDC or config files that
was added in Q, there is a need to be able to change the mapping
at runtime.

This's different from focus being present to handle lifecycle/app
switching/etc, the rest of the system will need to be adapted to
work with no focus

- Provide an API that could add/update the associations.
- Provide an API that could remove the runtime associations.

Bug: 136080860
Test: manual
Change-Id: Ib80eea9a9c4b4326b0d48a9f496fa550dab2230e
5 files changed