by Tim Hunt.
I don't uderstand the "Under control === private properties". Another example is contexts. Of course, the internals of contexts need to be kept under control, and they are. We have public read-only properties $context->contextlevel and $context->instanceid, etc.