if (!$file) {
     echo "No config file for {$module} -- Skipping\n";
     continue;
 }
 $mod_storage = I2CE_MagicData::instance("tmp_{$module}");
 I2CE::setConfig($mod_storage);
 $mod_configurator = new I2CE_Configurator($mod_storage, false);
 ob_start();
 $s = $mod_configurator->processConfigFile($file, '0', false, false);
 //process the configGroups but not the meta data.  dont show verbose errors.
 if ($s != $module) {
     echo "Module mismatch on {$s}!={$module}  in {$file}-- Skipping\n";
     continue;
 }
 if (!$mod_storage->pathExists("/modules/forms/forms") && !$mod_storage->pathExists("/modules/forms/formClasses")) {
     $mod_configurator->__destruct();
     $mod_configurator = null;
     $mod_storage->erase();
     $mod_storage = null;
     continue;
 }
 foreach ($mod_storage->modules->forms->forms as $form => $formData) {
     $data = array();
     foreach (array('class' => false, 'display' => false, 'meta/child_forms' => false) as $k => $required) {
         $data[$k] = null;
         if (!$formData->setIfIsSet($data[$k], $k, true)) {
             if ($required) {
                 continue 2;
             } else {
                 unset($data[$k]);
             }