Add a more robust notification mechanism

- Now the notification mechanism works for all backends (local, in-memory, remote)
  and works cross backends as well (ie. if a client watches a remote irminsule server
  which stores its state as a local Git store, then the client is notified everytime
  someone modifies the HEAD of the repo using Git command directly on the filesystem)

- For now on, using active polling on unix -- later we could use inotify and fsevents:
  the hook as an interface very similar to what ocaml-inotify-lwt would give us.

- the watch API takes a path as argument: notifications are sent every time someone
   creates, removes or modifies a file in that directory
Merge branch 'master' into notifications

Conflicts:
	lib/backend/irminGit.ml
	lib/backend/irminGit.mli
Update oasis autogen files
typo
fix merge bug
Be more explicit about installing the directory polling notifier.
Do not shout and fail if no notifier is installed.
Merge pull request #27 from samoht/notifications

Add a more robust notification mechanism