Issue 950 - Export file on Mocha.Test objects

This patch exposes a file property on `Test` objects. I've gone ahead and added a reporter that proves that the patch works. Running the mocha test suite with |REPORTER=file make test| prints

```
/home/gareth/Documents/mocha/test/hook.timeout.js => 1 tests
/home/gareth/Documents/mocha/test/acceptance/context.js => 1 tests
/home/gareth/Documents/mocha/test/acceptance/diffs.js => 9 tests
/home/gareth/Documents/mocha/test/acceptance/duration.js => 3 tests
/home/gareth/Documents/mocha/test/acceptance/fs.js => 2 tests
/home/gareth/Documents/mocha/test/acceptance/globals.js => 4 tests
/home/gareth/Documents/mocha/test/acceptance/http.js => 1 tests
/home/gareth/Documents/mocha/test/acceptance/multiple.done.js => 1 tests
/home/gareth/Documents/mocha/test/acceptance/pending.js => 1 tests
/home/gareth/Documents/mocha/test/acceptance/required-tokens.js => 1 tests
/home/gareth/Documents/mocha/test/acceptance/root.js => 1 tests
/home/gareth/Documents/mocha/test/acceptance/timeout.js => 2 tests
/home/gareth/Documents/mocha/test/acceptance/uncaught.js => 1 tests
/home/gareth/Documents/mocha/test/acceptance/utils.js => 5 tests
/home/gareth/Documents/mocha/test/grep.js => 6 tests
/home/gareth/Documents/mocha/test/hook.async.js => 3 tests
/home/gareth/Documents/mocha/test/hook.err.js => 21 tests
/home/gareth/Documents/mocha/test/hook.sync.js => 3 tests
/home/gareth/Documents/mocha/test/hook.sync.nested.js => 4 tests
/home/gareth/Documents/mocha/test/http.meta.2.js => 3 tests
/home/gareth/Documents/mocha/test/http.meta.js => 3 tests
/home/gareth/Documents/mocha/test/runnable.js => 21 tests
/home/gareth/Documents/mocha/test/runner.js => 21 tests
/home/gareth/Documents/mocha/test/suite.js => 36 tests
/home/gareth/Documents/mocha/test/utils.js => 3 tests
```

This patch fixes #950.