First pass of AVL tree implementation. Insertions are balanced, but deletions are not.