Complexity is good. If you imagine metabolism being a convoluted network, then all these sulphur-iron reactions are tiny half-dead branches in that network. If you want complexity, I can give you real complexity of real metabolism :)
For example, if you want to play with anaerobic conditions, then you can split the reaction:
carb->nrg
into these:
carb->pyruvate+nrg
pyruvate->lactate+nrg
pyruvate+O2->CO2+lots of nrg
Same with nitrogen cycle, with aminoacids, etc... Just ask for complexity and I'll provide :)
Back to our discussion:
What is the reason to have both - limestone and silicate? Can't we just do with one? Seems like a redundant system. How are these going to be walls? Env.grid locations that cannot be crossed? Interesting idea....
Upkeep is necessary for all proteins - muscles and enzymes. Are we going to recycle either of these? They usually are recycled, but I don't know if that would make a big difference to us. One thing to add. We can make bots to create stock of "proteins". When an enzyme or a muscle is made, it has to take one of the proteins. If none are available, then enzyme/muscle is not created.
I guess we can add C02 and 02. But here is the problem I see: the presence of gases is not yes/no case. It is a matter of efficiency. In env. grid if a location has a single O2 molecule, that molecule will be extracted and used. But in real life the air with tiny amount of O2 is simply not usable for us. How can we simulate this? My inclination is to leave it aside for now...