Improve tree functor implementation and implement more rigorous testing
- do not template, and then throw an exception at runtime if the type is not the right one -- instead, just require the right type as argument, so that the error happens at compile time instead
- do not just check the size of the vectors returned, check that the actual children, basics, etc returned are exactly as expected
- re-use
walk
to traverse decay trees when possible - drop the meaningless V1 suffix
Edited by Gerhard Raven