Tree is on its own (always was)
refactored error monad