1) Create Window 2) Create UI (based on native controls for OS) 3) Load drop downs, top level down. 4) If you design your application this way, you won't have to build a skeleton. Mozilla is not using native UI/UX components to build their UI, so they have to go through several extra steps. I'm sure they do this in the name of customizability, but that, IMO, should be optional.