A toolkit for designing and implementing user-interface dialogues