finish AVL tree implementation draft