Introducing BehaviorTrees.CPP (who needs Finite State Machines anymore?)

Great work! It looks very interesting.

I have some questions after going through the tutorials:

  1. Are there ways to include other XML files. It would be useful to define a subtree in a file, and make it reusable for multiple BT.

  2. If they can be included, you may have problems of name clashing. For instance multiple independent subtrees use the same identifiers, such as <MoveBase goal="${TargetPose}"/> and <LookAt pose="${TargetPose}"/>, is there any way of address this problem?

We have faced this issue with our HFSM system, and we’ve had to implement remapping of identifiers and namespaces to avoid clashing.