Fixes for inotify use

* On Python 3, pyinotify takes unicode paths, not bytes. Annoyingly, it skips over non-unicode paths without throwing a clear error, so it took a bit of digging to find the problem.
* The `_is_pyinotify_08x()` method is really interested in 0.8 or above, but was testing just for 0.8.x. We're on 0.9.x now, so I updated it to treat that like 0.8. It [looks like](https://github.com/seb-m/pyinotify/releases) pyinotify 0.8 was released more than 5 years ago, so maybe we should just remove this check altogether and assume we have a new enough version.