Make the multipleWatchers test time out after 1s.
Allow multiple instances polling the same file.

Fixes shama/gaze#31, yeoman/grunt-regarde#7.

Problem: Different instances would call `fs.unwatchFile` (in `Gaze.close`)
when initializing without passing the listener, thus causing node to
unregister *all* callbacks that were registered for the given file.

Solution: Remeber the callback, that was passed when calling
`fs.watchFile` and use that for "unregistering" with `fs.unwatchFile`.