implement depth(), left_sibling(), right_sibling and level_order_traverse()