Pass test results to a callback function for browser compatibility

First parametwer of JUnitXMLReporter constructor now also accepts a
callback function in which case the resulting XML of the test string is
passed as the only argument to the callback function instead of being
written to a file
This makes it possible to use it in a browser environment instead of only Node.JS/Rhino etc.
I currently use this to automatically run my tests in the browser and then read the results using Selenium WebDriver