New ClassAds have no concept of private or invisible attributes. This invisibility appears to only be used for dPrint() and some calls to put(). We could modify the put() in new ClassAds to take an optional second argument which indicates whether to include the statically-defined list of private attributes. We would also modify dPrint() and/or the unparser class to omit the private attributes.

There is also a static method called ClassAdAttributeIsPrivate(), which could become a free-standing function.

developer time: 1-2 hours

Progress: dPrint() now omits private attributes.