Uses Grunt directly from unit tests rather than through a process.exec. That way, coverage will work. Had to trick Grunt into executing nodeunit as a command (or else there was some collision between the Grunt instance currently running and the Grunt instance in the unit tests).