Several Changes: Creation of PluginFactory and PluginUser to test changes so far. A driver if you will. Cleanup and documentation