Reduce duplication, simplify CPP macros
Reduce duplication, simplify CPP macros

dmjio/aeson,SeanRBurton/aeson,neobrain/aeson,roelvandijk/aeson,23Skidoo/aeson,jkarni/aeson,plaprade/aeson,roelvandijk/aeson,beni55/aeson,JPMoresmau/aeson,sol/aeson,neobrain/aeson,nurpax/aeson,sol/aeson,timmytofu/aeson,bwo/aeson,aelve/json-x,lykahb/aeson,abbradar/aeson,sol/aeson