Workaround node-phantom bug with a forked dep.

Use reid/node-phantom@socketio-startup, which fixes a bug that can
cause Travis to fail Yeti builds with "Unable to start phantomjs".
Organize tests into unit and functional buckets.

Generate code coverage results for each category
to allow for building up more unit tests.
Remove unused dependency pact.
Switch from walk to walkdir.
Use Vows >=0.6.4, which includes reid/yeti@extras.
Merge branch 'test-categories'
Add ci-coverage.sh for Jenkins CI builds.

Istanbul at master is used to make this work.
We use Istanbul and Vows at the same time.
Vows prints test results to stdout, but even
with the `--print none` option, Istanbul will
print some informational messages to stdout.

These messages are printed to stderr on master,
so the XML on stdout doesn't have these messages.
Add docs and lint CI scripts. Move to own dir.
Run coverage and unit coverage seperately.
Remove legacy yui test launcher.

Yeti can now find tests using glob, since YUI's tests are
all in standard places now.
Classify Blizzard test as a unit test.
Add initial CLI unit test.
Add CLI#createHub test using Hub mock.

Use new Mockery dependency to mock the Hub.
CLI requires process option for its constructor.
Add configuration unit test.
100% coverage for configuration.
Event logging to stderr, not stdout. Fix CI XML.

stdout must be clean for exporting XML in CI.
100% line coverage for ip.
100% coverage for color.
100% coverage for hijack.