Ignore WatchEvents for items not being watched

Before this commit, when a WatchEvent occurs for a directory/file that's not being watched, an IllegalStateException would be thrown as it was believed such a situation would never occur. With this commit, that scenario is now properly handled.
Merge pull request #553 from candrews/patch-19

Ignore WatchEvents for items not being watched
Merge branch '2.4.x' into 2.5.x