code: def remote_startCommand(self, stepref, stepId, command, args):
          
          stepId = decode(stepId)
          command = decode(command)
          args = decode(args)
  
          self.activity()
  
          if self.command:
              log.msg("leftover command, dropping it")
              self.stopCommand()
  
          try:
              factory = registry.getFactory(command)
          except KeyError:
              raise UnknownCommand(u"unrecognized WorkerCommand '{0}'".format(command))
          self.command = factory(self, stepId, args)
  
          log.msg(u" startCommand:{0} [id {1}]".format(command, stepId))
          self.remoteStep = stepref
          self.remoteStep.notifyOnDisconnect(self.lostRemoteStep)
          d = self.command.doStart()
          d.addCallback(lambda res: None)
          d.addBoth(self.commandComplete)
          return None
docs: This gets invoked by L{buildbot.process.step.RemoteCommand.start}, as
          part of various master-side BuildSteps, to start various commands
          that actually do the build. I return nothing. Eventually I will call
          .commandComplete() to notify the master-side RemoteCommand that I'm
          done.