Fix flag formatting in agent main
Split different container actions to types

type actionRequest was a suitable simplifying type when all the actions
differed only in enumeration. But with the addition of 2 new parameters
to createRequest, the actions became structurally different, and a
single type + a switch on a struct field was no longer a suitable
abstraction.

This change breaks out the various action requests to distinct types,
each with its own request channel in the container.