[MRG] Trees: Fix inconsistency in impurity_improvement

There were still some inconsistencies regarding the computation of `impurity_improvement`. The current implementation was correct, but was not normalized by the (weighted) number of samples in the current node. For trees that are built in depth-first, this does not change anything. However, for trees that are built in best-first, this may have wrongly prioritized splits. 

Also, this does not change anything for GBRT since it relies on  `FriedmanMSE`, for which impurity improvement was already scaled by the number of samples in the node.

CC: @pprett @arjoly