Ha, lol - was passing "wallDepth" rather than "wallWidth" to top and
bottom walls, so they were generating based on sizes of other walls. No
wonder the bug was so hard to pin down: only happened when the rooms were
unevenly sized (which was most of the time, but hard to identify).

Anyway, fixed that - things look to work on refactored stuff now.