Simple finite state machine framework built on ReactiveCocoa signals