You are as awesome as you are insane for doing this in code. I can't wait to see how this works out. I have a secret (or not so secret) obsession with randomly generated maps from playing too many roguelikes.

In any case, consider yourself reped, you crazy freak.

Regarding the reproducibility point, the solution is to generate your noise and save it in a layer, and then just duplicate that layer over and over. I'm not saying that invalidates your mad designs, but its at least how you address that problem.

Good luck!