'Enumerate a `title` string (i.e. add a number in parentheses) so
it is not equal to any node title in the current scheme.'

def enumerateTitle(self, title):

    curr_titles = set([node.title for node in self.scheme().nodes])
    template = (title + '    ({0})')
    enumerated = map(template.format, itertools.count(1))
    candidates = itertools.chain([title], enumerated)
    seq = itertools.dropwhile(curr_titles.__contains__, candidates)
    return next(seq)
