It took several hours of work, but at the end i had a cool new fortress village/Iron Golem spawner... which turned out to be neither simple, elegant, nor efficient =P
The basic structure looks like a stereotypical castle, four towers with curtain walls between them. I just stuck as many doors as possible on the walls and towers in order to create the village. The entire thing is built on a small plateau and where the ground floor ought to be in the center of the castle is actually a giant pit, with a small ledge running along the inside so i'd have a place to put the doors. Floating in the center of the pit is the platform where the Iron Golems are supposed to spawn.
The first problem is that the villagers seem to swarm like schools of demented fish. They insist in clustering in random spots during the day, then at night, for reasons i'm not sure of, they almost always form a swarm right in front of the iron doors into the castle. I'd put in an airlock to make sure none of them escaped when i entered or left the castle, but the one time i tried to use the airlock at night one of the swarm jumped inside the airlock. Nothing i did could get him to leave the damn thing, even when it became day again and the rest of the swarm dispersed. Since he didn't offer any valuable trades i just ended up just killing him.
Do you know what you call an airlock that keeps the things on one side from escaping to the other side by forcing you to kill anything that sets foot inside the airlock? A total failure as an architectural feature.
If that were the only problem it wouldn't be too bad. However because the villagers refuse to distribute themselves evenly it seems that not every door is being counted as part of the village all the time, which means the calculated center of the village tends to wander a bit, which means that the Iron Golem spawning area also wanders a bit, and instead of being completely contained by the central pit it tends to overlap with the inner ledges a bit.
I'd considered the possibility that the spawning area might not be exactly where i wanted it to be, so i'd built a glass skylight around the inside of the curtain wall at height 4, because the wiki said Iron Golems need a 2x2 x 4 high space to spawn. Well it turns out that's not right. Golems started showing up on the ledge despite the skylight. So i figured maybe they only needed a 1x2 by 4 high space, and extended the skylight all the way to the edge of the ledge. That didn't work. So i figured maybe the height requirement was wrong, so i lowered the skylight to height 3. Guess what? The Golems _still_ spawned on the ledge, but now their heads were embedded in glass! And as an added bonus, they didn't even start suffocating. I couldn't get them to move at all without breaking the glass first. (Which is incredibly annoying because it takes a lot of time to make glass and you can't recover the blocks after placing them!) I'm now in the process of replacing the lower layers of glass with blocks of dirt to see if that will fix the issue, but i'm concerned that if i put too much dirt up there the doors in the curtain wall will stop registering as "houses".
Oh, as an added bonus, the first time i cleared away a section of fence along the edge of the pit so i could shove a mis-spawned golem over, a villager immediately ran over and stood in the open spot. I think i managed to retrieve that one by building a ledge around him, getting on the other side and shoving him back onto the plateau. However i lost three villagers over the edge in that manner before deciding that Golem removal could only safely be performed either A: at night, while all the villagers were inside swarming the front gate, or B: after fencing or blocking off the entire work area so no villagers could get inside.
But at least _sometimes_ Golems were spawning on the central platform! Yay! ...except they never seem to fall _off_ the platform into the trap waiting below. Fine, the wiki page claims that the Golems will spawn in water if there's nowhere else, so i made the platform large enough to support a water trap that should shove the Golems off the edge. Except as soon as i did that the Golems seemed to stop appearing on the platform.
Okay, maybe the problem is that i still haven't finished blocking off all the areas on the ledge that they can spawn, so as a stopgap i tried to create a redstone system to turn the water on and off so the Golems would have a chance to spawn on the empty platform, then get washed away every so often.
After a couple hours research and experimentation i managed to construct a circuit that would intermitently raise and lower pistons to control the water flow. The first problem is that with 10 repeaters i was not able to design a circuit with a long enough cycle to allow the water to flow long enough to actually wash stuff off the platform. And at 10 repeaters and the attendant redstone wire i was running out of space at the level i was working on. In addition Golems were now spawning on the platform i built for the redstone circuit, so i had to put a roof over that, one that _hopefully_ extended high enough to get out of the spawning zone.
So now the small elegant spawning platform floating in the center is a medium sized somewhat elegant platform with a water trap on it, surrounded by a large, ugly, asymmetrical hodgepodge of platform and roof holding the redstone circuits.
And just to add insult to injury, if i wait long enough Golems do start appearing in the pit. I'm 90% certain the floor is out of the spawn area, so they must be spawning up high and falling down when i'm not looking. Except they're not landing in the area below the spawn platform and getting carried to the grinder for disposal. But despite the fact that according to the wiki the drop should be enough to take them outside the village bounds, as soon as there are three Golems hanging around at the bottom of the pit the spawning seems to stop. At this point i'm not sure that _anything_ the wiki said about Golem spawning is correct =P
Technically the system works though! As long as i check from time to time and manually shove the Golems into the disposal chute. I've collected three 64 stacks of iron so far and about 32 roses. But the system definitely fails at the simple, elegant, and efficient metrics.
I could fix at least some of the problems by just expanding the damn plateau, castle, and pit by two or four blocks in diameter. I cringe at thinking about the amount of work involved in that however.
I feel kind of like i'm in a virtual version of the Money Pit. It was such a simple and beautiful plan at first! Upon closer examination sure, there was a minor problem or two, but it just required a tiny bit of fixing up!