I've have been thinking about this! However I can't really come up with anything you won't have already considered, I imagine. The following is likely very obvious but it's my thought processes...
Most of this is stuff I think you have on your "to do" list, and I'm really looking forward to seeing them arrive !!
Salent points?
I think a fundamental is the decision of profession.
In times of yore a persons workplace was also his home.
Most of a person's time is taken up with work (and sleep) - he cuts down trees every day but probably only goes to the "shops" once a week (say).
"Refined" products are easier to transport than raw materials.
So a person will generally live next to his raw materials. That is biased by
a) the quantity(/quality?) of raw materials present - ie. how long he can work the site - this is forward thinking but not really speculative - the quantity is measurable
b) "distance" from his customers - this is based on the "road value" factor - time and effort. This may be significant if aspects of "perishability" of the goods is considered. Grain can be transported further than bread. Bread goes "off" faster, for example.
What should transpire, I would imagine, is a radial pattern. Mining/forestry - any non-perishable product can be as far from the centre as it likes - proximity need is more about "shopping".
Long term perishables producers, eg. farms are closer.
Short term perishables, eg. processed foods, fish etc are even closer
So what is at the centre? The place where all this is traded.
Why is that place there? Because in the grand scheme of things that's where the next echelon of trade progresses. I call to mind the history of Stilton. It got its name from where it was distributed from, not where it was made.
On the detail side of house placement.
I think you might want to introduce building "sides" and "separation" - people don't generally build immediately in front of or behind someone else's house - I imagine there would be some sort of shouting involved!A "separation" factor would probably be required - this would be dependant on profession? A farmer is likely to shout much more about crowding than a blacksmith
One exception to this would be at cross roads, where building (say) one space away and behind someone else is "OK". I would imagine that the major of the two roads would get populated more first....? At some point adding to the end of this becomes "too far" compared to living on a "side street". A crossroads represents a minor "plus" factor for placement as it adds "value" in terms of ease of access, I guess.
Expansion
How a farm doesn't end up in the middle of a town that grows around it? Well, for this you need land values. A "close in" farmer will sell his high value land and eventually move? I'm unsure about this.
Ultimately, I think the town has to have that focal point - the market. That, in turn, needs the external communications links.
"Common Land" - I thought I'd throw this one in here. Market's and parks and some other spaces could be designated as Common Land, this should add a certain extra permanency and protection for such spaces...?
Like I said at the start, I can't help you on the code front, but I hope this sort of logical assessment is useful?
cheers!