avl tree added not much different from bst