Introduce a shim to achieve Channel semantics on different gevents