Add AVL tree

How to multiuse node type's key,p,l,r???
TODO: tese module.