I can see a lot of good in this. On some RTS's, repairing existing units costs a small portion of their originally required resources per repair "tick". It could be reasonable to have "gunpowder" as a global resource (like gold, wood, etc.) and that be used when a cannon is fired, for instance (or a tank moving). It's a question of the mod's designer as to rather or not it's a resource that the individual unit has (like energy or health) or that's shared by the entire faction.
It would seem to me that the most appropriate mechanism for handling this may be to extend the flexibility of resources. I would say leave hp and ep like they are (probably) because there's a lot of code is wrapped around those, but add extensible resources and mechanisms to manipulate those from the skills. This would create an additional mechanism to "store" resources as well. Currently, when a unit stores resources, they store them in a global (faction-side) pool. What I'm proposing would add the mechanism for a unit to store them locally, on their person. It would make a lot more sense for a tank to store it's own fuel and run out unless they return to a fuel depot for instance.
This flexible mechanism could solve a multitude of uses. Resources would still be defined where they are now, but would not appear at the top of the screen unless a unit declared that it stored them as a global resources (as they do now). I propose adding the optional parameter of local, with a boolean value to the unit.xml under /unit/parameters/resources-stored/resource with the default being false (i.e., a global resource). Then, under unit/skills/skill, add a "resource-cost" node containing the same resource nodes as under resources-stored. We should probably also add a hp-cost node (like ep-cost) to allow skills to consume hps as this is not terribly uncommon either.
For the FPM tree, this would probably adequately support my earlier prospect that the Grove would automatically generate wood, it could just be added to it's stop skill. I'm still reorienting myself to the project, so I'm not sure where a good place (time & version-wise) is to insert this. Also, I need more time to reflect on it and get input from others, especially if it should support features similar to using a portion of the resources required to make a unit, a unit doing repairing and consuming global resources for that repair would have to key off of the cost of the unit being repaired, and the above specification wouldn't cover that.