added the cfp and tidied a few things up