PluginManager.cs: ObjectsForAddin<T>, you made a string idName var; put it back the way it was, you only use it once there's no point in assigning it way ahead of time. Also, maybe we should define ExtensionPaths as a Dictionary, so that in the class we can refer to the paths with human names instead of hardcoding the paths in a bunch of places?
PluginManager.cs: ObjectsForAddin<T>, you made a string idName var; put it back the way it was, you only use it once there's no point in assigning it way ahead of time. Also, maybe we should define ExtensionPaths as a Dictionary, so that in the class we can refer to the paths with human names instead of hardcoding the paths in a bunch of places?
Other than that, looks good. +1