merge emacs-24
Initial version of the w32notify code.
Adding and removing a watch seems to work: a new thread is launched
when a watch is added and exits when the watch is removed.
But there are no notifications, so it seems.  At least, the Lisp
callback function passed to w32notify-add-watch is not called.
After fixing several bugs, the code works now for watching a single directory.
Need to remove debug code.
Also need to add w32notify.c.
Added w32notify.c.
Merge from mainline.
Final version that supports only one watch at a time.
Zero out dirwatch->dir when bailing out for any reason.
Signal an error if a watch is requested while another one is active.
Fix a typo in a comment.
Merge from trunk after cygw32 commit, and resolve conflicts.
Merge from trunk after addition of w32common.h.
Add w32notify.o to SOME_MACHINE_OBJECTS in src/Makefile.in.
Merge from trunk.
Support file notifications in a TTY session.
FIXME: file notifications detected only when the Emacs window has focus.
Merge from trunk.
The TTY case is resolved: notifications now work even if Emacs
doesn't have focus.
Some cleanups:
  1. If fill_queue returns -1, but there were file notifications, return 0.
  2. Move invariant code out of the loop in queue_notifications and 
     handle_file_notifications.
Merge from trunk.
More than one watch is now supported.
Need to fix the issue with descriptor, now a pointer converted to Lisp integer.
Merge from trunk.
Merge from trunk.