Large commit. Added basic MonitorFileSystem() functionality.

Tested to compile and run, excludes are working so far.
Lots of changes to test event handler, added event queue, etc.

- Added code to actually watch events and push them onto a queue.
- Currently have event handler for testing that just reads off events every seconds.
- Reworked the collectPaths() function, it was not working as desired before.

Currently a goroutine is used to start the watcher on the set of paths, after this routine starts
the event handler passed by the user is now given a queue from which it gets the events.