That's great. Finally we know part of the history.
Thus it seems unneccesary the attribute general_unit_upgrade.
There remain (at least for me) two questions:

1) How to get one only general unit: I imagine it will be possible if one faction has only one unit with general_unit attribute. Did you try it?

2) When and why the general unit is upgraded in the campaign: is it related to Marius reform? Is it related to some degree of developement of the faction?

I hope you have the answers.