Fix compatibility issues with listen 2.7.12

- Fixes https://github.com/guard/listen/issues/275
- reworked how different versions of Listen are handled
I try to avoid doing this these days in favor of explicitly calling methods on `Util`, to make it easier to tell where a given function is coming from.