Move most of CFBG into it's own class