Include root directory in event callbacks

If you have multiple watchers running the relative file path alone is
not enough to decide if an action should be taken or not. Including the
root path of the watcher provides more insight.

I have opted to add the root path as a 2nd argument to the event
callback so as to (hopefully) make this change backwards compatible.