Build tests dynamically

Wanted to get some feedback on this. I kept noticing that having to update multiple files to add a new test file, and the rigidity of a single level of hierarchy were a barrier to adding new test files and organizing tests.

So, I added grunt tasks that build the tests dynamically based on the `test/modules` directory. It will also track and mirror directory structures, so we can organize tests into folders.

Everything from the browser works, you can navigate to folders and still run all tests at `/test/tests/`. 

Grunt (and PhantomJS) works too. `runTests.js` had to be inlined to compensate for the various levels.

The one thing that's __not working:__ running specific nested tests from grunt cmd line:
```sh
$ grunt     //works
$ grunt qunit    //works
$ grunt qunit:misc   //works
$ grunt qunit:ractive-find   //doesn't work, loads but PhantomJS dies :(
```
Thoughts?