Implement my own AVL tree. Support all the rotations in insertions and deletions.