[cleanup] Deprecate *Traversal base classes
These base classes are no longer needed since the traversal now (after merging !18 (merged)) always build static tree paths. This MR does three things:
- Deprecate the base classes.
- Stop using/advertising the base classes.
- Remove the
treePathType
members to highlight that they are no longer respected.
StaticTraversal
and DynamicTraversal
are now completely empty structs, but they should not simply be removed, because user code will rely on them.
In contrast, the TreePathType
enum could also be removed after merging !21 (merged), since it's not used anymore. Furthermore the documented traversal interface required the *Traversal
base classes but did not guarantee that users can set this manually. Hence it's very unlikely that users explicitly rely on this enum.