private BSTNode removeBook(String title, BSTNode node){
		
		if(node == null || node.isEmpty()){
			return node;
		}
		else{
			if(node.getContent().getTitle().compareTo(title) > 0){
				node.setLeft(removeBook(title, node.getLeft()));
				return node;
			}
			
			else if(node.getContent().getTitle().compareTo(title) < 0){
				node.setRight(removeBook(title, node.getRight()));
				return node;
			}
			
			else{
				BSTNode newnode;
				if(node.hasLeft() && node.hasRight()){
					Book newroot = findMin(node.getRight()).getContent();
					newnode = new BSTNode(newroot,node.getLeft(),removeMin(node.getRight()));
				}
				else
					newnode = (node.hasLeft()) ? node.getLeft() : node.getRight();
				return newnode;
			}
			
		}
	}