split bst into bst and bstnode

solved the remove operation todo