Fixed watchdir option

I think current watchdir option doesn't work as it should (please correct me if I'm missing something).

My recent project was consisted of many different modules each of them having it's own tests suite.
I've tried to use watchdir option but it didn't work as I expected.

I've created sample project and described steps to reproduce the issue and fix for the issue with my forks (https://github.com/lesniakania/guard and https://github.com/lesniakania/guard-rspec):

https://github.com/lesniakania/multiple-modules-with-guard

These changes depends on changes I've made in guard repo.
I second that - btw, shouldn't _write() be using tmp_file also?