Add test-ci npm script that outputs tests results in a separate file.

I'm currently working on setting up a Jenkins job that tests grunt against Node.js' v0.12 branch (which contains the code for the upcoming 0.12 stable version). While doing so, I wanted to be able to run all tests (the equivalent of `npm test`) and parse the results so that I could examine tests failures easily.

Currently, the tests results are outputted to standard error or output using the default reporter, and it makes parsing tests results difficult.

Having a separate npm script like `test-ci` that outputs tests results to files with a standard format that is easy to parse by a program (TAP) is very helpful.

This change also adds `grunt-cli` as a local dependency, so that we don't have to manage this dependency at the system level where the continuous integration tools are installed. I don't think this specific change should be done within this PR, but since this PR is about making testing grunt easier on a CI platform, I thought I would keep it here for now until I gather more feedback from you.

Finally, it upgrades `grunt-contrib-nodeunit` to a version that supports the `reporterOutput` option.

Please let me know what you think.
could we minimize this diff please? just bump nodeunity, also please use `~`