added CModulePrinterFactory, added some missing require