docs: def main():
      """1. Parse args
      2. Figure out which directories are actually meraculous run directories
      3. Make an instance for each directory and generate a report
      """
      home = os.getcwd()
      options = parse_arguments()
      print(options)
      print()
  
      #get a list of all directories in the cwd
      dirs = [direc for direc in os.listdir(home) if os.path.isdir(direc)]
      #instantiate all of the classes that we will be using in parallel processing
      instances = []
      for each in dirs:
          thisInstance = meraculousRunAnalyzer(each, options.censor, options.quiet)
          #only process the instances that are meraculous directories
          if thisInstance.isMer:
              instances.append(thisInstance)
  
      if len(instances) == 0:
          print("There are no meraculous folders in this directory. Exiting")
      elif len(instances) > 0:
          # run the program for each instance
          #process each file sequentially using max number of threads
          #determine the pool size to work with the unique sample names
          pool_size = determine_pool_size(instances)
          pool = ThreadPool(pool_size)
          results = pool.map(run_merReport_dummy, instances)
          pool.close()
          pool.join()