<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def run_manager(self, job_override=None):
 """The run manager. The run manager is responsible for loading the plugin required based on what the user has inputted using the parsed_command value as found in the job_args dict. If the user provides a *job_override* the method will attempt to import the module and class as provided by the user. Before the method attempts to run any job the run manager will first authenticate to the the cloud provider. :param job_override: ``str`` DOT notation for import with Colin used to separate the class used for the job. """


        for arg_name, arg_value in self.job_args.items():
            if arg_name.endswith('_headers'):
                if isinstance(arg_value, list):
                    self.job_args[arg_name] = self._list_headers(
                        headers=arg_value
                    )
                elif not arg_name:
                    self.job_args[arg_name] = self._str_headers(
                        header=arg_value
                    )
                else:
                    self.job_args[arg_name] = dict()

        # Set base header for the user-agent
        self.job_args['base_headers']['User-Agent'] = 'turbolift'

        LOG.info('Authenticating')
        indicator_options = {'run': self.job_args.get('run_indicator', True)}
        with indicator.Spinner(**indicator_options):
            LOG.debug('Authenticate against the Service API')
            self.job_args.update(auth.authenticate(job_args=self.job_args))

        if job_override:
            action = self._get_method(method=job_override)
        else:
            parsed_command = self.job_args.get('parsed_command')
            if not parsed_command:
                raise exceptions.NoCommandProvided(
                    'Please provide a command. Basic commands are: %s',
                    list(self.job_map.keys())
                )
            else:
                action = self._get_method(method=self.job_map[parsed_command])

        run = action(job_args=self.job_args)
        run.start()