def _caller(self, iface_name, func_name):
        """
        Returns a function for the given interface and function name.  When invoked it
        calls client.call() with the correct arguments.
        
        :Parameters:
          iface_name
            Name of interface to call when invoked
          func_name
            Name of function to call when invoked
          params
            Params pass to function from the calling application
        """
        def caller(*params):
            return self.client.call(iface_name, func_name, params)
        return caller