Use composite unsubscribe in merge

I think it's important that we eventually expose the CompositeUnsubscribe functionality for users of the library to make it easier for users to implement custom combinators without leaking resources of getting bugs related to synchrnous/asynchrnous publishing, and such, that we should dogfood this functionality internally.