Dispatch event handlers in separate threads.

Fixes [issue 229](https://github.com/gorakhargosh/watchdog/issues/229).

The pytest-timeout dependency is not strictly necessary, but seems desirable. Should the test I added fail, this plugin will kill it and all the threads and print out a separate stack dump for each thread. Otherwise the test would never terminate.