keep contract and representer in one Op.
Op::representer_class is now build at runtime and not when including Representer. this allows including Representer once in the top Op.