Allow initialize to take an alternative start_state

For the cases where it is desireable to force the machine
to start in a state that is not the constructor provided
state allow that to be possible using the initialize method.

By default it performs the existing behavior.