basic BST (scala)
root BST insert with rotation
root insertion example from the book