This revision solves two issues made apparent by @wowgetoffyourcellphone's Delenda Est mod.
- For some time now in vanilla-0ad, production queues in structures such as barracks have contained a list of all possible units trainable in that building, using the string {civ} as a placeholder for a civ's unique code. If a unit cannot be trained by the civ that owns the structure, then that entry in the list is ignored. Along with reducing duplication, this helps facilitate structure capturing.
In Delenda Est, wowgetoffyourcellphone extended this to the build queues of units, permitting listing every constructable structure in the game in the parent templates of units. Unfortunately, the Structure Tree doesn't support this, and errors out.
- When loading the Han Chinese civ in the structree whilst running Delenda Est, the tree draws it... incorrectly. This is partly due to the fact that there are more than three phases in Delenda Est, and that the unravel_phases function didn't have any way to properly deal with the case where both a given tech's phase and that tech's prerequisite tech's phase did not exist in the list that this function builds.