Hi,
Why? Unity gui is far from being adequate on many projects. I think you should embrace proper 2d frameworks, they will give you a lot more flexibility.
Having said that, I worked on a system few years ago where you define your UI using xml, and it uses Unity GUI, the good thing about this is that it would all become persistent, if you create a button it will stay on screen until you explicitly delete it. AND this xml descriptiong has PlayMaker data and event bindings all over, allowing to create a powerful UI just with xml.
If you are interested I can send you the package. Since it's unfinished, you'll ned to script here and there the missing bits, but it could be solving some problems for you.
bye
Jean