Allow BalancingLearner to return arbitrary number of points from 'choose_points'
Currently it is limited to len(self.learners).
We should fix this by implementing _choose_one_point, which selects the learner with the largest loss improvement,
and then calling it n times in choose_points.
Anything cleverer would also be much more complex.