completed BinaryTree class
refactor 'if \!' into unless