Changed to the well known pattern using collect() für multi-events.

First implementation didn't handled fast-following changes well enough, multiple events have been fired. Changed the watcher to follow the same pattern that's used in other watchers by using collect().