static min(...dateTimes) {
    if (!dateTimes.every(DateTime.isDateTime)) {
      throw new InvalidArgumentError("min requires all arguments be DateTimes");
    }
    return bestBy(dateTimes, (i) => i.valueOf(), Math.min);
  }
Return the min of several date times
@param {...DateTime} dateTimes - the DateTimes from which to choose the minimum
@return {DateTime} the min DateTime, or undefined if called with no argument