implemented geocdm. Ready to convert all the supporting functions to use it.