Monitor USB device events via udev.

This CL adds a UsbDeviceEventNotifier class to monitor USB device events
via udev and notifies registered observers that implement the
UsbDeviceEventObserver interface.

BUG=chromium:245143
CQ-DEPEND=CL:57391
TEST=Build and run unit tests.

Change-Id: Ie4c6649f88b79b27b44dd3335977f68ccdd1dc2a
Reviewed-on: https://gerrit.chromium.org/gerrit/57390
Reviewed-by: Ben Chan <benchan@chromium.org>
Tested-by: Ben Chan <benchan@chromium.org>
Commit-Queue: Ben Chan <benchan@chromium.org>
5 files changed