better manage sinks by auto matically unregistering them with Run() returns