Index: /branches/eraser6/pluginsRewrite/Eraser.Plugins/Host.cs
===================================================================
--- /branches/eraser6/pluginsRewrite/Eraser.Plugins/Host.cs	(revision 2352)
+++ /branches/eraser6/pluginsRewrite/Eraser.Plugins/Host.cs	(revision 2353)
@@ -43,4 +43,8 @@
 		protected virtual void Dispose(bool disposing)
 		{
+			if (disposing)
+			{
+				Instance = null;
+			}
 		}
 
@@ -99,35 +103,4 @@
 		/// </summary>
 		public abstract void Load();
-
-		/// <summary>
-		/// The plugin load event, allowing clients to decide whether to load
-		/// the given plugin.
-		/// </summary>
-		public EventHandler<PluginLoadEventArgs> PluginLoad { get; set; }
-
-		/// <summary>
-		/// The plugin loaded event.
-		/// </summary>
-		public EventHandler<PluginLoadedEventArgs> PluginLoaded { get; set; }
-
-		/// <summary>
-		/// Event callback executor for the OnPluginLoad event.
-		/// </summary>
-		/// <param name="sender"></param>
-		/// <param name="e"></param>
-		internal void OnPluginLoad(object sender, PluginLoadEventArgs e)
-		{
-			if (PluginLoad != null)
-				PluginLoad(sender, e);
-		}
-
-		/// <summary>
-		/// Event callback executor for the OnPluginLoaded vent
-		/// </summary>
-		internal void OnPluginLoaded(object sender, PluginLoadedEventArgs e)
-		{
-			if (PluginLoaded != null)
-				PluginLoaded(sender, e);
-		}
 
 		/// <summary>
@@ -140,4 +113,35 @@
 		/// and return True.</remarks>
 		public abstract bool LoadPlugin(string filePath);
+
+		/// <summary>
+		/// The plugin load event, allowing clients to decide whether to load
+		/// the given plugin.
+		/// </summary>
+		public EventHandler<PluginLoadEventArgs> PluginLoad { get; set; }
+
+		/// <summary>
+		/// The plugin loaded event.
+		/// </summary>
+		public EventHandler<PluginLoadedEventArgs> PluginLoaded { get; set; }
+
+		/// <summary>
+		/// Event callback executor for the OnPluginLoad event.
+		/// </summary>
+		/// <param name="sender"></param>
+		/// <param name="e"></param>
+		internal void OnPluginLoad(object sender, PluginLoadEventArgs e)
+		{
+			if (PluginLoad != null)
+				PluginLoad(sender, e);
+		}
+
+		/// <summary>
+		/// Event callback executor for the OnPluginLoaded vent
+		/// </summary>
+		internal void OnPluginLoaded(object sender, PluginLoadedEventArgs e)
+		{
+			if (PluginLoaded != null)
+				PluginLoaded(sender, e);
+		}
 	}
 
