Further work on GUIs for multiple modules

This is for you @Dynious (so you can start porting)