docs: def _generate_command_dict(self):
          """Create a customized namespace for Workbench with a bunch of shortcuts
              and helper/alias functions that will make using the shell MUCH easier.
          """
  
          # First add all the workers
          commands = {}
          for worker in self.workbench.list_all_workers():
              commands[worker] = lambda md5=None, worker=worker: self._work_request(worker, md5)
  
          # Next add all the commands
          for command in self.workbench.list_all_commands():
              # Fixme: is there a better way to get the lambda function from ZeroRPC
              commands[command] = self.workbench.__getattr__(command)
  
          # Now the general commands which are often overloads
          # for some of the workbench commands
          general = {
              'workbench': self.workbench,
              'help': self._help,
              'load_sample': self.load_sample,
              'pull_df': self.pull_df,
              'flatten': self.flatten,
              'vectorize': self.vectorize,
              'top_corr': self.top_corr,
              'tags': self.tags,
              'pivot': self.pivot,
              'search': self.search,
              'reconnect': lambda info=self.server_info: self._connect(info),
              'version': self.versions,
              'versions': self.versions,
              'short_md5': self.session.short_md5,
              'prompt_deco': self.session.prompt_deco
          }
          commands.update(general)
  
          # Return the list of workbench commands
          return commands