Yeah, treated individually those buildings only store a comprehensible number of variables that influence the game. But they also influence each other which makes the whole thing quite complex. You will have to work out functional statistics on economy and population growth: How much people need how much food, water, dishes, marble, weapons, etc.... How fast will what commodity be consumed. How much tax payers' money do you need to keep the whole city going and how much have your people to earn to pay it. It is hard to make a game that is fun to play out of all of these variables!
So, I would start like the game itself started: A empty map with the possibility to create roads and basic houses. Then I'd toss in some people based on the population growth variable which depends on the free houses - from now on population growth increases very slowly. Also when there are no more houses available - which forces the player to build more. One important aspect of those games was the fact that it forced you to plan ahead and keep going with the city since there was never a point of stasis.
The people should have basic needs: Water, Food, Jobs. I'd skip the risk of fire for a later state of development. I'd use counters for the needs. It always counts backwards until you build something to stop it. For example it counts backwards on the water variable until you build a well. I'd use instance variables for every house. You will need it to restrict the movement of the inhabitants to a certain area.
Hence the player must be able to build the basic structures: Wells and farms. The people will work on the farms, earn money and pay taxes. Now you have a working cycle: The player receives new money which he can spend for possibilities to get more money and so on. But it has to work! I'd experiment with these basic settings until it is balanced enough. You will also have to restrict the movement of the inhabitants of one house to the area around that house. This should be easy since you tell the Computer to use only the variables provided by the tiles near the house for that house.
Now I'd give the inhabitants the option of public unrest and to leave the city if it doesn't fit their needs. I'd experiment again until it works fine. Then I'd work on the more complex themes.
Say, what culture do you want to depict?