file-watcher: tests for the daemon

test-file-watcher is a simplied chat program to talk to file
watcher. Typically you would write something like this

cat >expect <<EOF
<hello
>hello
<index foo bar
>ok
EOF
test-file-watcher . <expect >actual

and test-file-watcher will execute the commands and get responses. If
all go well, actual should be the same as expect. '<' and '>' denote
send and receive packets respectively. '<<' and '>>' assume the
packets are in form: "something SP PKT-LINE PKT-LINE..." and it will
encode or decode the inner PKT-LINE for you.

$GIT_TEST_WATCHER enables a few more commands for testing
purposes. The most important one is 'test-mode' where inotify is taken
out and the tests can feed inotify events to file watcher via
test-file-watcher. System events are not involved.