Enable waiting for component at end of pipeline

It is assumed that components with no connected outputs are at the end
of a pipeline. Once they shut down (on receiving None) it is safe to
stop all the other components, some of which may not have received a
None to tell them to stop. Waiting for the end components but not others
is safer than waiting for all components to stop.