This diff makes the individual boost tests output a junit report XML,
and merge them in order to produce a test suite junit report. The final
report is located under a `test/junit` dir under the build directory.
This requires a few behavior changes and implies some limitations:
- The boost test suites always produce the junit report. The report
merger script always run as part of the test suite, even if there is no
junit report. In this case it simply has no effect.
- The test suites that generate a junit report no longer fail on first
failed test, but let the whole suite run to completion. This allows for
generating the merged report if a test fail. This won't prevent a test
suite failure from stopping the build and potentially other test suites
won't complete.
- The test suite duration reported is not the actual duration, because
it can't account for the tests running parallel. The reported duration
is equivalent to running the tests serially.