This should be done right after the above if-statement, shouldn't it? What happens in `_add_node` if the node is actually a leaf because all feature values are constant (which is detected by `pos >= end`)?