AVL tree with rotation