I'm not good with field editing, usually I miss the proper phase or try to edit read-only fields. Also, I implemented the Thergy Wizard Tradition in a similar fashion, with a choice affecting several conditional bootstraps.
Feel free to clean up the code, I could use some new ideas