Implementation of AVL tree data structure