Run qunit tests via phantom in 'npm test' rather than .travis.yml.

We also throw a helpful error if phantom isn't found.
split out each qunit suite into a separate tap test file.

this makes it easier to test the suites individually from the command-line,
and also gives better feedback when running tap tests (rather than one
big long delay when running all suites, you get feedback for each suite).
Merge pull request #581 from toolness/qunit-tap

Run qunit tests via phantom in 'npm test' rather than .travis.yml.