improve indent
Move the variant types out to Conduit, for eventual sharing with Async