Dereddening functions

Initial version of CCM and FM dereddening functions. These are not complete (GCC09 version needs to be finished), but are ready for an initial review for style.