'Return a function that relays calls to the group'

def __getattr__(self, name):

    def relay(*args, **kwargs):
        for member in self._members:
            method = getattr(member, name)
            method(*args, **kwargs)
    setattr(self, name, relay)
    return relay
