Hooks refactored to use HookRunner for every run mode
Hooks made to optionally have arguments
Hooks made to accept javascript functions as executors
`on_change` hook added with `{file: ...}` argument
JS configs allowed
Dynamic config example added
Config JS reader fixed
Merge branch 'better_hooks' of https://github.com/inossidabile/testem into inossidabile-better_hooks

Conflicts:
	lib/config.js
Merge remote-tracking branch 'origin/master'
0.3.26
URIs allowed for src_files and serve_files
Ability to programmatically override process termination for CI mode
Termination override extended to dev mode
Fixed recent breakage.
0.3.27
Adding sunos (SmartOS) support
Checking to make sure the server starts before continuing

If another process was already bound to port 7357, the built-in HTTP
server would fail to start up. This wasn't detected, so PhantomJS was
started anyway, and would try connecting to whatever process already
had 7357 open. And then everything would hang.

The error reporting here could probably use some improvement, but this
is enough to prevent it from hanging (which is brutal in CI mode).
Merge pull request #274 from beaglecode/adding_smartos

Adding sunos (SmartOS) support
Merge branch 'src-uris' of https://github.com/inossidabile/testem into inossidabile-src-uris
0.3.28
Merge branch 'port_in_use' of https://github.com/beaglecode/testem into beaglecode-port_in_use
Refactored the changes in `port_in_use`.
0.3.29
Merge branch 'exit-override' of https://github.com/inossidabile/testem into inossidabile-exit-override