tree node class