Reverted extra check for plugin filenames that was avoiding a plugin from being loaded twice.  The fix was really to add the CppTPGPlugin::grap() and release() calls to the CppTPGDescriptorWrapper class.  The problem was that the CppTPGDescriptorWrapper object was ending up with an invalid pointer because the release() call in the scanPlugins() method was causing the CppTPGPlugin object to be deleted.