Run a list of executable primitives on this controller, and distribute the returned data to the associated TDOPromises.

        Args:
            commands: A list of Executable Primitives to be run in order.

def _execute_primitives(self, commands):
        """Run a list of executable primitives on this controller, and distribute the returned data to the associated TDOPromises.

        Args:
            commands: A list of Executable Primitives to be run in order.

        """
        for p in commands:
            if self._scanchain and self._scanchain._debug:
                print("  Executing", p)#pragma: no cover
            p.execute(self)