o Village population is the sum of every inhabitant in the village.
o Type "villager" is an un-assigned NPC which has minimal impact on production and consumption of goods, although will generally consume more than produce.
o Villagers can be assigned to be either "Miners" or "Farmers".
o Villagers assigned as Miners or Farmers can be arbitrarily re-assigned as Villagers, or switched between the two roles.
o Other specialists - Herbalist, Trader, etc - are hired from new arrivals at the village. Basically they come looking for a job.
o All inhabitants, other than Villagers, have prerequisites, based on general population, or of numbers of specific other specialists.
And here lay the problem:
o Some types are converted into other types (Villagers can be turned into Farmers) and some types are opened by certain criteria (If you have 25 Villagers you may have the opportunity to hire a Trader). Call these two options "Evolve" and "unlock"
I realized a couple of days ago I was making things too complicated by requiring that there be a certain number of unassigned Villagers available in order to unlock some of the other roles. So now there need only be a certain overall population in order to unlock those roles which are made available based on population. This also made another piece easier: Having a certain ration of different specialists to overall population; e.g. there can only be one Accountant per 250 villagers.
Also, once a villager is assigned a role (farmer | miner), that villager stays in that role permanently. No more switching. In order to account for bad rolls of the dice at the beginning, the game will start with a small stash of food and salt, so everyone doesn't starve to death on turn 3.
Wow. For a simple game - which this is - the design is a lot more complicated than I thought it would be.