Pretty sure "addRenderableWidget" fixes the issue where you have to manually render each widget.
Or is there a specific case why all your components are rendered manually in all screens?
If there isn't a special reason, there is a small way to refactor your code to be cleaner :)