I have not tried implementing a finite state machine into a workflow and not sure if someone has tried this yet. Maybe\Hopefully someone in the forums will respond with an implementation that they have done.
Like you said, I think it is possible and I would anticipate that you would be using the Switch Node and Conditional Node like you mentioned.
Let us know how your implementation goes if you choose to implement a finite state machine in a workflow.