Note : This entry is an design pattern proposal, please comment.
A component developer generally instanciates classes and pass AbstractComponent, Loggers and more to the constructor. AbstractComponent is then casted into the implementation and logger instance is propagated from class to class which drive us to a very poor application design.
In order to avoid this type of design, I suggest that the CDK provides sort of context which can be easily retrieved from any component class without any cast need where the component class instance, the logger, the SUManager are available.