Combine Observer/Publisher together since there's no reason not to