each operation requested represents a session
            the session holds information about the plugin running it
            and establishes a project object

def __setup_connection(self):
        """        
            each operation requested represents a session
            the session holds information about the plugin running it
            and establishes a project object
        """    
        if self.payload != None and type(self.payload) is dict and 'settings' in self.payload:
            config.plugin_client_settings = self.payload['settings']
        config.offline = self.args.offline
        config.connection = PluginConnection(
            client=self.args.client or 'SUBLIME_TEXT_3',
            ui=self.args.ui_switch,
            args=self.args,
            params=self.payload,
            operation=self.operation,
            verbose=self.args.verbose)
        config.project = MavensMateProject(params=self.payload,ui=self.args.ui_switch)
        config.sfdc_client = config.project.sfdc_client