docs: def submitJob(self, inputs, method="POST",
                    outSR=None, processSR=None,
                    returnZ=False, returnM=False):
          """
             submits a job to the current task, and returns a job ID
             Inputs:
                inputs - list of GP object values
                method - string - either GET or POST.  The way the service is
                         submitted.
                outSR - spatial reference of output geometries
                processSR - spatial reference that the model will use to
                 perform geometry operations
                returnZ - Z values will be included in the result if true
                returnM - M values will be included in the results if true
             Ouput:
                JOB ID as a string
          """
          url = self._url + "/submitJob"
          params = { "f" : "json" }
          if not outSR is None:
              params['env:outSR'] = outSR
          if not processSR is None:
              params['end:processSR'] = processSR
          params['returnZ'] = returnZ
          params['returnM'] = returnM
          if not inputs is None:
              for p in inputs:
                  if isinstance(p, BaseGPObject):
                      params[p.paramName] = p.value
          if method.lower() == "get":
              res = self._get(url=url, param_dict=params,
                                 securityHandler=self._securityHandler,
                                  proxy_url=self._proxy_url,
                                  proxy_port=self._proxy_port)
              jobUrl = self._url + "/jobs/%s" % res['jobId']
              return GPJob(url=jobUrl,
                            securityHandler=self._securityHandler,
                            proxy_url=self._proxy_url,
                            proxy_port=self._proxy_port,
                            initialize=True)
          elif method.lower() == "post":
              res = self._post(url=url, param_dict=params,
                                  securityHandler=self._securityHandler,
                                  proxy_url=self._proxy_url,
                                  proxy_port=self._proxy_port)
              jobUrl = self._url + "/jobs/%s" % res['jobId']
              return GPJob(url=jobUrl,
                            securityHandler=self._securityHandler,
                            proxy_url=self._proxy_url,
                            proxy_port=self._proxy_port,
                            initialize=True)
          else:
              raise AttributeError("Invalid input: %s. Must be GET or POST" \
                                   % method)