Binary Tree Adventures in Java