ClientGUI implementation