Index: /branches/histogram/HeuristicLab.Core.Views/3.3/TypeSelector.cs
===================================================================
--- /branches/histogram/HeuristicLab.Core.Views/3.3/TypeSelector.cs	(revision 6021)
+++ /branches/histogram/HeuristicLab.Core.Views/3.3/TypeSelector.cs	(revision 6022)
@@ -119,5 +119,5 @@
           pluginNode.Tag = plugin;
 
-          var types = from t in ApplicationManager.Manager.GetTypes(BaseTypes, plugin, ShowNotInstantiableTypes, assignableToAllTypes)
+          var types = from t in ApplicationManager.Manager.GetTypes(BaseTypes, plugin, !ShowNotInstantiableTypes, assignableToAllTypes)
                       orderby t.Name ascending
                       select t;
Index: /branches/histogram/HeuristicLab.Persistence/3.3/Default/Xml/Primitive/System.Drawing/Font2XmlSerializer.cs
===================================================================
--- /branches/histogram/HeuristicLab.Persistence/3.3/Default/Xml/Primitive/System.Drawing/Font2XmlSerializer.cs	(revision 6021)
+++ /branches/histogram/HeuristicLab.Persistence/3.3/Default/Xml/Primitive/System.Drawing/Font2XmlSerializer.cs	(revision 6022)
@@ -22,5 +22,5 @@
 using System;
 using System.Drawing;
-using System.Xml;
+using System.Globalization;
 
 namespace HeuristicLab.Persistence.Default.Xml.Primitive {
@@ -28,27 +28,28 @@
 
     public override XmlString Format(Font font) {
-      XmlDocument doc = new XmlDocument();
-      XmlNode fontNode = doc.CreateElement("Font");
-      fontNode.Attributes.Append(doc.CreateAttribute("Name"));
-      fontNode.Attributes.Append(doc.CreateAttribute("Size"));
-      fontNode.Attributes.Append(doc.CreateAttribute("Style"));
       if (font != null) {
-        fontNode.Attributes["Name"].Value = font.Name;
-        fontNode.Attributes["Size"].Value = font.Size.ToString();
-        fontNode.Attributes["Style"].Value = font.Style.ToString("d");
+        return new XmlString(font.Name
+          + ";" + font.SizeInPoints.ToString(CultureInfo.InvariantCulture.NumberFormat)
+          + ";" + font.Style.ToString("d")
+          + ";" + font.GdiCharSet.ToString());
       }
-      return new XmlString(fontNode.OuterXml);
+      return new XmlString(string.Empty);
     }
 
     public override Font Parse(XmlString fontData) {
-      XmlTextReader tr = new XmlTextReader(fontData.Data, XmlNodeType.Element, null);
-      if (!tr.Read() || tr.Name != "Font") return null;
-      string name = tr.GetAttribute("Name");
-      if (string.IsNullOrEmpty(name)) return null;
+      if (string.IsNullOrEmpty(fontData.Data)) return null;
+      string[] tokens = fontData.Data.Split(';');
+      if (tokens.Length < 4) return null;
       float size = 12.0f;
-      if (!float.TryParse(tr.GetAttribute("Size"), out size)) return null;
       FontStyle style = FontStyle.Regular;
-      if (!Enum.TryParse<FontStyle>(tr.GetAttribute("Style"), out style)) return null;
-      return new Font(name, size, style);
+      byte gdiCharSet = 1;
+      if (!float.TryParse(tokens[1], NumberStyles.Float, CultureInfo.InvariantCulture.NumberFormat, out size))
+        return null;
+      if (!Enum.TryParse(tokens[2], out style))
+        return null;
+      if (!byte.TryParse(tokens[3], out gdiCharSet))
+        return null;
+
+      return new Font(tokens[0], size, style, GraphicsUnit.Point, gdiCharSet);
     }
   }
Index: /branches/histogram/HeuristicLab.PluginInfrastructure/3.3/DefaultApplicationManager.cs
===================================================================
--- /branches/histogram/HeuristicLab.PluginInfrastructure/3.3/DefaultApplicationManager.cs	(revision 6021)
+++ /branches/histogram/HeuristicLab.PluginInfrastructure/3.3/DefaultApplicationManager.cs	(revision 6022)
@@ -151,4 +151,7 @@
     // register assembly in the assembly cache for the AssemblyResolveEvent
     private void RegisterLoadedAssembly(Assembly asm) {
+      if (loadedAssemblies.ContainsKey(asm.FullName) || loadedAssemblies.ContainsKey(asm.GetName().Name)) {
+        throw new ArgumentException("An assembly with the name " + asm.GetName().Name + " has been registered already.", "asm");
+      }
       loadedAssemblies.Add(asm.FullName, asm);
       loadedAssemblies.Add(asm.GetName().Name, asm); // add short name
Index: /branches/histogram/HeuristicLab.PluginInfrastructure/3.3/Manager/PluginValidator.cs
===================================================================
--- /branches/histogram/HeuristicLab.PluginInfrastructure/3.3/Manager/PluginValidator.cs	(revision 6021)
+++ /branches/histogram/HeuristicLab.PluginInfrastructure/3.3/Manager/PluginValidator.cs	(revision 6022)
@@ -606,4 +606,7 @@
     // register assembly in the assembly cache for the ReflectionOnlyAssemblyResolveEvent
     private void RegisterLoadedAssembly(Assembly asm) {
+      if (reflectionOnlyAssemblies.ContainsKey(asm.FullName) || reflectionOnlyAssemblies.ContainsKey(asm.GetName().Name)) {
+        throw new ArgumentException("An assembly with the name " + asm.GetName().Name + " has been registered already.", "asm");
+      }
       reflectionOnlyAssemblies.Add(asm.FullName, asm);
       reflectionOnlyAssemblies.Add(asm.GetName().Name, asm); // add short name
