Rewrote the C code generation of the modifiers

Modifiers are no longer chained within C