why would you need to implement a new ```BinaryTreeMachine```?
if you inherit the ```BinaryTreeMachineNode``` from this ```TreeMachineNode``` then you'll be able to still use ```TreeMachine```