coalesce (cargo): Combine disjoint types that share common traits.
Keywords: trait|either|coalesce