is there a reason you're using handwritten tree objects instead of passing a spec into the `Schema` constructor and using the resulting schema like the tests above do?