the UnitGenerators are by default labeled with their class name.
this should be explained.
but also, when we create two or more UnitGenerators of the same type (but with different parameters) they have to be labeled.
?
can we avoid this? should we reference count them?
?