Returns a new instance with the processor set to a new instance 
        of :class:`IdentifierProcessor`, appropriately initialized to process
        non-strings appropriately.

def with_id_processor(cls, *args):
        """Returns a new instance with the processor set to a new instance 
        of :class:`IdentifierProcessor`, appropriately initialized to process
        non-strings appropriately.
        """
        ip = IdentifierProcessor()
        g = cls(ip, *args)
        ip.nonstring_processor = lambda _, substitution: \
            g._process_nonstrings(substitution)
        return g