added support to shutdown dependent components when shuttng down a
component