Fix issue in Compiler Alternative instance
Allow overriding the `deploy` command with Haskell code

By overriding `deploySite` with a `Configuration -> IO ()` code,
the user can execute Haskell code to deploy the site rather than
shell code.

The default behaviour honors the `deployCommand` configuration
field and is backward compatible.
Merge pull request #125 from samueltardieu/deploy-in-haskell

Allow overriding the `deploy` command with Haskell code
Check for mailto: URLs

Closes #127
UnixFilter improvements

Closes #128
Add dannysu.com and meta.plasm.us to examples
Bump bytestring dependency for NFData instance
We'll do it ourselves
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.
Properly implement protocol skipping in checker

Network.HTTP can only check if http:// and https:// links resolve,
however there is much more scheme names than just `mail:`, `http://` and
`https://`.
They would be handed off to internal URI checker and would fail.
Merge pull request #129 from simukis/check-whitelist

Properly implement protocol skipping in checker
Fix issue where: hasProtocol "foo" == True

See #129
Add web2day-nantes.org to examples
Account for absolute paths in `shouldIgnoreFile`
Add `getResourceFilePath`

See #130
Merge github.com:jaspervdj/hakyll into fsnotify