[Input] Adds a class that listens to a directory.

We'll use that to monitor the TomTom MySports connect downloading
files when plugging in the watch.
Also added a few unittests.