Use listen 1.0 for the moment

This is just to get the tests running again, since 2.0 is out now
Fix race condition

If we don't synchronize mutations to the files/directories arrays, then
the thread in the polling watcher could call check_stale while we're
in this critical region, causing the watcher to be marked stale even
though we intended to overwrite the stored mtime in subjects_changed.

This seems to be what was causing intermittent failures in
AppTest#test_changing_the_Gemfile_restarts_the_server.
Fix race condition (for real this time)

Need to run subjects_changed in the critical section, otherwise another
thread could come in a compromise our assumptions.
Assert that setup commands actually succeed

For example temporary rubygems issues could prevent bundling succeeding,
and it's good if it's obvious that this is why a test failed.
Assert that Kernel#system calls work
Try again with listen watcher test

I think/hope this might be solved by
86a053a1cc9d825a987c1c7fdd84b79a25293989 and
14df23d8aea91b442fd57580ba6846a2cfdabd5f.

Time will tell...
Add missing require

Fixes #191
Bump to 0.0.11