Create case classes to use specialized implicit generators