- Use both size and mTime when determining if files have changed, since the latter has second-granularity.
- Don't re-enqueue the file modification event. This can deadlock the channel buffer. Instead, rely on the next file event to trigger a metadata update.

Tested by running: `yes | head -n 50000000 > somefile.txt` while distributor ran.

Previously, the channel buffer would fill up and get stuck. Now, it
generates the proper metadata (same hash) whether the file was present
in the directory before distributor was started or if it is added
incrementally.