Please do it in your bananaphone branch if that's more convenient to you.
(If you want to be more adventurous, you can even make a new branch on top of the current upstream master with your setup() function and the obfs2 changes. I will merge that faster than the bananaphone changes.)
OK I gave BaseTransport the setup class method and used it to save obfs2's shared secret :
https://github.com/david415/obfsproxy/commits/david-transport-setup
I have not yet tested it. I will do that soon.