text: Title: Recreating control structure results from JSON fails if they have messages mixed with iterations/branches
  Body: It's not possible to create control structures that contain messages mixed with branches/iterations normally, but listeners can log at any time and that can result to this kind of result structures. For example, if `start_try` logs something, the message will be the first item the TRY structure contains before actual TRY/EXCEPT branches.
  
  This is somewhat unlikely thing to happen and it could be considered a bug if a listener really log in places like this. Because the end result is that execution results are unusable, it is somewhat severe anyway.