make projector upstream/downstream connection bi-directional

The goal is to make the projectors interface more async friendly and have a
listenableFuture as result in the ProjectorChain. This commit is a preparation
to accomplish that.