docs: private Node findBestLeafNode(ClusKernel newPoint) {
      	double minDist = Double.MAX_VALUE;
      	Node bestFit = null;
      	for (Node e: collectLeafNodes(root)){
      		if (newPoint.calcDistance(e.nearestEntry(newPoint).getData())<minDist){
      			bestFit = e;
      			minDist = newPoint.calcDistance(e.nearestEntry(newPoint).getData());
      		}
      	}
      	if (bestFit!=null)
      		return bestFit;
      	else
      		return root;
  	}