Tests: Inject testswarm script after loading all tests
Grunt: Watch task run the default task at start

Ref #582
Grunt: Update test-on-node task to remove globals

Ref #582
Closes #586
Assert: Simplify ok assertion

Fixes #587
Dump: Move QUnit.jsDump to QUnit.dump

Fixes gh-592
Ref gh-591
Build: Move jsdiff to external directory

Closes gh-591
dump: Add a depth parameter to object parsing

In projects with deep object graphs, like Ember, walking all properties
of an an object recursively can end up walking most of memory. This
causes the browser to run out of memory and kill the tab/thread.

This introduces a depth option for the parse function, which is used in
places where strictly accurate output of an object is not needed, for
instance, when showing two un-equal object in test output.