code: public Deferred<TreeMap<byte[], Span>> scan() {
      start_time = System.currentTimeMillis();
      int i = 0;
      for (final Scanner scanner: scanners) {
        new ScannerCB(scanner, i++).scan();
      }
      return results; 
    }
docs: Starts all of the scanners asynchronously and returns the data fetched
  once all of the scanners have completed. Note that the result may be an
  exception if one or more of the scanners encountered an exception. The
  first error will be returned, others will be logged.
  @return A deferred to wait on for results.