genop: give arg_type its own equality
The wire round-trip test compared argument types with the polymorphic
(=), walking the representation of a type it does not own. Export
equal_arg_type and call it. An argument type is a flat enum of
thirty-two constructors whose only payload is an int32, so structural
equality is the equality here and it is defined as a monomorphic (=):
spelling the branches out by hand could only diverge from it.