def client(self, address, is_cli=True):
        if address in self.clients:
            return self.clients[address]
        # if local force mockauth or if local server use correct auth
        if is_local_address(address):
            bundle_store = self.bundle_store()
            model = self.model()
            upload_manager = self.upload_manager()
            download_manager = self.download_manager()
            auth_handler = self.auth_handler(mock=is_cli)

            from codalab.client.local_bundle_client import LocalBundleClient
            client = LocalBundleClient(address, bundle_store, model, upload_manager, download_manager, auth_handler, self.cli_verbose)
            self.clients[address] = client
            if is_cli:
                # Set current user
                access_token = self._authenticate(client)
                auth_handler.validate_token(access_token)
        else:
            from codalab.client.remote_bundle_client import RemoteBundleClient
            client = RemoteBundleClient(address, lambda a_client: self._authenticate(a_client), self.cli_verbose)
            self.clients[address] = client
            self._authenticate(client)
        return client
Return a client given the address.  Note that this can either be called
dataset/ETHPy150Open codalab/codalab-cli/codalab/lib/codalab_manager.py/CodaLabManager.client