added the most part of BST without some functions like RANK and SELECT