revamped the mocha runner, using mocha's runner object

When integrating my mocha test suite I ran into a silly error: a pending test was causing my test suite to never complete because Mocha was not writing "Pending: 1" into the results div. I then realized that this package needed a new Mocha runner so I wrote one. This version uses the runner object that is returned by `mocha.run()`.

The somewhat hacky bit is that the user needs to expose that object, I've chosen `window.mochaRunner` for simplicity, but I could probably make that configurable.

In my test files, the script block looks like this:
```html
<script>
  mocha.setup('bdd');
  mocha.checkLeaks();
  mocha.globals(['mochaRunner']);
</script>
<!-- load stuff -->
<script>var mochaRunner = mocha.run();</script>
```

Of course, this breaks the test cases, and requires that they are modified and merged into the repo. If it is decided that you guys want to go this direction I'd be happy to take care of the test modifications.