Completed basic implementation of BST