Perhaps it has already been suggested, but here's my 2 pennies anyway. So, my idea was that you have to have a certain population before expanding. Lets say 50 or so. And with each new town it scales up a bit so you won't get a snowball effect after you have a few cities. So in this example 125 or so to make your third city.