Mostly done with modules.

Added todo list at the top of the cpm file.