If necessary, add a suffix to label to avoid name conflicts
- label – desired label
- taken – set of taken names
Returns label if it is not in the taken set. Otherwise, returns label_NN where NN is the lowest integer such that label_NN not in taken.