Deal with start and end workflow.

It's being handled during state transition. Not ideal but we are limited by the stateless engine.
Workflow definition has to provide one StartState and at least one EndState.