code: func (menu *Menu) CallWhenChildStable(command *Command, child *Menu) {
  	menu.WaitingResponses = append(menu.WaitingResponses, command)
  	menu.Sync.ChildStableQueue = append(menu.Sync.ChildStableQueue, &ChildCommand{
  		Command: command,
  		Child:   child,
  	})
  }
docs: /*
  CallWhenChildStable queues up "Calls" to go out only when the state of the Child is Stable. Stable means that the child is Ready and has no AwaitingResponses
  */