We should be able to support reloading multiple version of a compiled module from a ".csproj" file in the same AppDomain. However, we are currently running into a limitation with NHibernate getting confused when a type name is present in multiple assemblies loaded in an AppDomain. So, until a solution is found, any change to a ".csproj" file of an active module requires an AppDomain restart. The purpose of this class is to keep track of all .csproj files monitored until an AppDomain restart.