Dynamic state machine written in RoR with JS frontend renderer