https://machinelearningmastery.com/discussing-decision-trees-what-makes-a-good-split/