Create and use the InputEventManager
The manager does the following:
- Listens for and handles input events
- Manages all interaction with the Atspi.Device (e.g. grabs)
- Provides functions related to heuristically determining the nature of the most recent input event to identify what to speak (e.g. in text, up/down suggests we should speak the line at the caret).
See issue #484 (closed).