gui comp stream: add dead object wrapper to CallAfter functions

On destroy, we unsubscribe to the data, to avoid problem with dead objects.

However, it seems there is still a little chance that the CallAfter has already been scheduled, causing a dead object call.
So wrap the function in the callafter into a dead object wrapper.