Added is_leaf_node and get_descendants methods