Using inorder_successor in bst::begin().
Function attach_node_left made nonmember.
Function insert_node_right made non-public.