reformatting
split huge cpp file to smaller ones
move cpgf binder to an earlier loading stage
move specs to cpp file