Behavior is the same (all correct; sim1CT button does not do anything- in fact, the popup is removed).
But:  switched from reactive-style to render-style, and changed the button to an "actionButton".
TODO, the code to print the actionButton's value
(to be incremented) is not printing yet:
reactive({
    cat("Value of sim1CTbutton is ", input$sim1CTbutton)
  })
Got rid of the annoying error messages in
"isModelFinished()".
This demonstrates the use of activeButton.

You need to assign the result of a reactive call to a component of output,
at the top level inside shinyServer.
Otherwise, it's not registered and the callback will not happen.
"toString" functions for CT and patient.
Moved outcomeModelSpecs to AFTER running sim1CT.
We  should fix sim1CT to allo more than one outcome model.
Partway implementing sim1CTbuttonAction for real.

Corrected silly bug in call to shortName.

Working to add an arg:
  createObjectsTable = function(theSpecChoice)
This will work better for constructing the call to sim1CT.
These work:
 evalToggle
 View spec classes & objects, all spec types.
 Define one CT: change the indexes, and the text above the table reflects the changes.
 (only 1,1,2 are tested.  no interop testing yet).
Not working:
 Run one cT: The Sim1CT button was disabled temporarily.
This version in _shiny_advanced runs a trial!

The looping was stopped just by restarting RStudio. Weird..it was looping on a print statement that had been commented out.

TODO: Run the trial only on buttonpress.
TODO: add dynamic color and label back to the buton
TODO: Initialize PopRow etc. (assigning into values doesn't cut it)
TODO: Load upper ranges into the Row boxes.
TODO: More difficult: highlight chosen row, and/or put in radiobuttons to select row.