fix initial attempt to incorporate LAUNCHING state and corresponding transition, and add needed associated handling

- the transition (self._fsm.on_event(PlatformAgentEvent.LAUNCH_COMPLETE)) was done at the end of on_start, but the children are *not* launched in on_start.
- _children_launch is the method that actually launches the children; the transition is now done at the end of this method.
- Now, proper LAUNCHING handling has been added, in particular to wait until the platform agent transitions to the UNINITIALIZED before issuing the INITIALIZE command.
- other adjustments to align with style and comments in the code
- remove flag LAUNCH_CHILDREN_ON_START (which was used to facilitate testing of the launch of the children in on_start and also in INITIALIZE). The launch of the children is now always started in on_start.

*NOTE*: No bad behavior was triggered (nor noticed) by the original attempt to incorporate the LAUNCHING state because the UNINITIALIZED state arrived at the end of on_start essentially reflected the previous situation where the initial state of the agent was UNINITIALIZED (instead of LAUNCHING).