Moved all references to file descriptors out of the generic object
structure.
Changed the poll()-related routines to deal with file descriptors
instead of objects and integrated poll support into fd.c.

diff --git a/server/change.c b/server/change.c
index 0edb34b..b1e69e0 100644
--- a/server/change.c
+++ b/server/change.c
@@ -54,7 +54,7 @@
 static struct change *create_change_notification( int subtree, int filter )
 {
     struct change *change;
-    if ((change = alloc_object( &change_ops, -1 )))
+    if ((change = alloc_object( &change_ops )))
     {
         change->subtree = subtree;
         change->filter  = filter;