code: synchronized void requestReport(CountDownLatch signal)
      {
          if (finalReport != null)
          {
              report = finalReport;
              finalReport = new TimingInterval(0);
              signal.countDown();
          }
          else
              reportRequest = signal;
      }
docs: checks to see if the timer is dead; if not requests a report, and otherwise fulfills the request itself