Refactoring

  Rename split2 to partition
  Extracted partition from best_of_best
Refactoring

  Better names
  Improved functions to find best split.