- Fixed the controller to not open the device and then the polling monitor can't access it (still need to fix the possible race condition).
- Added logging for when monitors are started and stopped, including some other debug logging.
- Made shutdown instant by rather polling on an event that can be notified and not waiting until the sleep timeout has occurred.
- Adding a controller test that works against an actual device.
Fixed test in which VID and PID wasn't mocked.
- Completed controller test that uses an actual device.
- When polling for a device, only open it if it isn't already open.