reworked client - controller interaction, no exceptions now