Preserve order of constructor/non_constructor variants in OCaml type decl.

Needed for types with "ocaml.type_equals" where constant and non-constant
constructors are interlaced.

Fixes #9.