Reimplemented much of the kqueue-based file watcher so that watching subdirectories works.

https://bugzilla.xamarin.com/show_bug.cgi?id=16259
Revert some whitespace changes.
Add a test for Creation event on FileSystemWatcher.
Fix error in tooltip display for ListView.ShowGroups

This fixes Xamarin bug 21346 " SWF.ListView does not handle item
tooltips when Groups are used".
Revert "Add a test for Creation event on FileSystemWatcher."

This reverts commit 66416d2655bda555f52e7fb73f97d3984cf2fbde.
Revert "Revert some whitespace changes."

This reverts commit dd19aacb906a052d3460463ae1cfef78c40ddd7c.
Revert "Reimplemented much of the kqueue-based file watcher so that watching subdirectories works."

This reverts commit fa9bbe14876057338d8148ccdf5fd77de131ed95.