FUniqueNameGenerator

Given an object scope, generate names that is not only unique within the scope, but also unique among all names generated before.