code: public static void trainIfNeeded(DistanceMetric dm, DataSet dataset, ExecutorService threadpool)
      {
          //TODO I WILL DELETE, JUST STUBBING FOR NOW TO MAKE LIFE EASY AS I DO ONE CODE SECTION AT A TIME
          trainIfNeeded(dm, dataset);
      }
docs: Static helper method for training a distance metric only if it is needed.
  This method can be safely called for any Distance Metric.
  
  @param dm the distance metric to train
  @param dataset the data set to train from
  @param threadpool the source of threads for parallel training. May be
  <tt>null</tt>, in which case {@link #trainIfNeeded(jsat.linear.distancemetrics.DistanceMetric, jsat.DataSet) }
  is used instead.
  @deprecated I WILL DELETE THIS METHOD SOON