working on a binary_tree implementation