Migrating from polling to notification: First shot

Using system file notification APIs it is much more efficient than
polling files every second.
Run server in main thread
Use shouldIgnoreFile
Prefer relative directories instead of absolute

This allows us to fully utilise shouldIgnoreFile
Refine code

This patch includes several smaller changes, namely:
1. We don't use result of `update` function and likely never will, so
   don't bother generating it.
2. Rename watch function to better reflect what it does.
3. Never exit preview server in case of failed update.
Merge github.com:jaspervdj/hakyll into fsnotify
Update patch for 5e4adaecb
Merge pull request #131 from simukis/fsnotify

Migrate to filesystem notification