Для себя, использую protothreads. Автоматы стали чудо как
читабельны. Абсолютно ничего не смущает. В вашем случае, сделал бы самопальный интерпретатор. Можно взять синтаксис Оберон, как самый компактный, добавить в него операции ожидания событий и ввода-вывода.
Скомпилированное лексическое дерево положить во флешь и шагать по нему интерпритатором, на полсотни строк кода.
На самом деле, потучится ровно тот же prothreads, но какбэ в изолированном пространстве.
UPD: Академически правильный путь - научить коллегу-тошнотика графическому представлению автоматов в виде графов. Для авторитетности, по книге Шатыло. Пусть рисует и предъявляет в открытом виде.
Avtomatnoe_programmirovanie_book.pdf