To be perfectly backwards compatible, we should do this:

    private static final Object monitor;

    @Override
    public void testRunStarted(Description description) throws Exception {
      synchronized(monitor) {
        listener.testRunStarted(description);
      }
    }

This is because the original RunNotifier code would not run two notification methods concurrently