Added support for explicit exclusive gateways.  We could not use the
choice step here because we did not want a corresponding fork gateway.
Also added the ability to set Ids through the StepDefinitions.  If the
id is null, one will be generated as always.  But setting a specific id
allows us to build the sequence flows we want explicitly.