Add RetconOperation type to split dispatch in two

New type and two new monadic actions:

- RetconOperation represents an operation to be performed by the
  system.

- determineOperation inspects event data and determines which
  operation/s to perform.

- runOperation performs the action/s described by a RetconOperation
  value.