Add integration specs and fix Listen::Directory recording