When generating the UI instances, I first generate the Buttons, which draw in all of the config info.  Then I instantiate all of the windows in the config, each of which will look through the list of Button objects to see which ones are registered to it, and... acquire them, into its own "buttons" array