You are W-TYPES. Goal: the medieval style gets three new building types and the overrides settlements need.
1. styles/medieval.mjs + kits-src/medieval/style.json: types `smithy`, `bakery`, `market_hall` per SETTLEMENT.md
   section 2 (atoms from the medieval-trades kit: forge_shed, chimney_forge, door_workshop, sign_smith, bread_oven,
   window_bakery, sign_baker, hall_post). The trades atoms live in a SEPARATE kit (kit 'medieval-trades'): give each
   layout instance a `kit` field ('medieval' default, 'medieval-trades' for these) and make render.mjs able to build a
   layout whose instances come from several kits (`kit.build` gets a map of kits, or build per kit and group: your
   call, keep the old single-kit call working). market_hall: open on all sides (no wall panels), hall_post at every bay
   axis on the long sides and the gable ends, generated oak plates and tie beams (beam boxes like the timber frame),
   the existing medieval tile roof over it; a smithy's forge_shed sits on a gable side with chimney_forge beside it,
   door_workshop on the street front; a bakery's bread_oven sits on the back wall (or a gable when the back is a party
   wall). The window rules still hold (one window size per full storey, head line, verticality).
2. Overrides on makeSpec for medieval AND breton (spec.mjs) AND their layouts: `party: ['left','right']` (blank party
   walls, no openings or chimney there), `plinth: m` (stone ground wall continues down that far below grade on all
   sides; layout output still has y = 0 at the street-side door sill), `gableFront: true` (medieval only: ridge along Z,
   the gable faces the street, the street facade is the gable with its windows on the axes; 2-3 bays, narrow 4-7 m).
3. Stretch only if 1-2 are done: lean-to roofs for breton annexes (layout.mjs lays gable roofs along X only today; an
   annex lean-to = one slope from under the main eaves down to the annex eaves, with gutter), then turn annexes back on.
Files: omg/kit/building/{spec.mjs,layout.mjs,check.mjs,render.mjs,styles/medieval.mjs,styles/common.mjs},
kits-src/medieval/style.json, kits-src/breton/style.json, omg/kit/building/test/types2.test.mjs (new), and the type
buttons in browse/buildings.html (add the new types). Local server port 8971, GPU probe FAL_PORT 8972.
Evidence: tests for each type (atoms present, no rule errors over 200 seeds each with grey-box kit info), party/plinth/
gableFront tests, screenshots of a smithy, a bakery, a market hall and a gable-front town house on the GPU box.
