'Create a group of aliases.
Parse a list of alias strings and, for each, create an appropriate
alias object.
@type items: L{list} of L{bytes}
@param items: Aliases.
@type args: n-L{tuple} of (0) L{dict} mapping L{bytes} to L{IDomain}
provider, (1) L{bytes}
@param args: Arguments for L{AliasBase.__init__}.'

def __init__(self, items, *args):

    AliasBase.__init__(self, *args)
    self.aliases = []
    while items:
        addr = items.pop().strip()
        if addr.startswith(':'):
            try:
                f = open(addr[1:])
            except:
                log.err(('Invalid    filename    in    alias    file    %r' % (addr[1:],)))
            else:
                with f:
                    addr = '    '.join([l.strip() for l in f])
                items.extend(addr.split(','))
        elif addr.startswith('|'):
            self.aliases.append(self.processAliasFactory(addr[1:], *args))
        elif addr.startswith('/'):
            if os.path.isdir(addr):
                log.err('Directory    delivery    not    supported')
            else:
                self.aliases.append(FileAlias(addr, *args))
        else:
            self.aliases.append(AddressAlias(addr, *args))
