Index: /trunk/sources/HeuristicLab.Persistence.Test/StorableAttributeTests.cs
===================================================================
--- /trunk/sources/HeuristicLab.Persistence.Test/StorableAttributeTests.cs	(revision 1554)
+++ /trunk/sources/HeuristicLab.Persistence.Test/StorableAttributeTests.cs	(revision 1555)
@@ -21,5 +21,5 @@
     static void Main() {
       TestClass t = new TestClass();
-      Dictionary<string, DataMemberAccessor> accessors = StorableAttribute.GetAutostorableAccessors(t);
+      Dictionary<string, DataMemberAccessor> accessors = StorableAttribute.GetStorableAccessors(t);
       foreach ( KeyValuePair<string, DataMemberAccessor> pair in accessors ) {
         Console.WriteLine(pair.Key + ": " + pair.Value);
Index: /trunk/sources/HeuristicLab.Persistence/3.3/Core/EmptyStorableClassAttribute.cs
===================================================================
--- /trunk/sources/HeuristicLab.Persistence/3.3/Core/EmptyStorableClassAttribute.cs	(revision 1555)
+++ /trunk/sources/HeuristicLab.Persistence/3.3/Core/EmptyStorableClassAttribute.cs	(revision 1555)
@@ -0,0 +1,39 @@
+﻿using System;
+using System.Collections.Generic;
+using System.Reflection;
+
+namespace HeuristicLab.Persistence.Core {
+
+  
+  [AttributeUsage(
+    AttributeTargets.Class,
+    AllowMultiple=false,
+    Inherited=false)]
+  public class EmptyStorableClassAttribute : Attribute {
+
+    private static readonly Dictionary<Type, bool> emptyTypeInfo = new Dictionary<Type, bool>();
+    public static bool IsEmptyStorable(Type type) {      
+      if (emptyTypeInfo.ContainsKey(type))
+        return emptyTypeInfo[type];
+      foreach (var attribute in type.GetCustomAttributes(false)) {
+        EmptyStorableClassAttribute empty = attribute as EmptyStorableClassAttribute;
+        if (empty != null) {
+          emptyTypeInfo.Add(type, true);
+          return true;
+        }
+      }
+      int nFields = 0;
+      foreach ( MemberInfo memberInfo in type.GetMembers(BindingFlags.Instance | BindingFlags.Public | BindingFlags.NonPublic) ) {
+        if (memberInfo.MemberType == MemberTypes.Field ||
+          memberInfo.MemberType == MemberTypes.Property)
+          nFields += 1;
+      }
+      if (nFields == 0) {
+        emptyTypeInfo.Add(type, true);
+        return true;
+      }
+      emptyTypeInfo.Add(type, false);
+      return false;
+    }
+  }  
+}
Index: /trunk/sources/HeuristicLab.Persistence/3.3/Core/StorableAttribute.cs
===================================================================
--- /trunk/sources/HeuristicLab.Persistence/3.3/Core/StorableAttribute.cs	(revision 1554)
+++ /trunk/sources/HeuristicLab.Persistence/3.3/Core/StorableAttribute.cs	(revision 1555)
@@ -4,36 +4,4 @@
 
 namespace HeuristicLab.Persistence.Core {
-
-  
-  [AttributeUsage(
-    AttributeTargets.Class,
-    AllowMultiple=false,
-    Inherited=false)]
-  public class EmptyStorableClassAttribute : Attribute {
-    private static readonly Dictionary<Type, bool> emptyTypeInfo = new Dictionary<Type, bool>();
-    public static bool IsEmpyStorable(Type type) {      
-      if (emptyTypeInfo.ContainsKey(type))
-        return emptyTypeInfo[type];
-      foreach (var attribute in type.GetCustomAttributes(false)) {
-        EmptyStorableClassAttribute empty = attribute as EmptyStorableClassAttribute;
-        if (empty != null) {
-          emptyTypeInfo.Add(type, true);
-          return true;
-        }
-      }
-      int nFields = 0;
-      foreach ( MemberInfo memberInfo in type.GetMembers(BindingFlags.Instance | BindingFlags.Public | BindingFlags.NonPublic) ) {
-        if (memberInfo.MemberType == MemberTypes.Field ||
-          memberInfo.MemberType == MemberTypes.Property)
-          nFields += 1;
-      }
-      if (nFields == 0) {
-        emptyTypeInfo.Add(type, true);
-        return true;
-      }
-      emptyTypeInfo.Add(type, false);
-      return false;
-    }
-  }
 
   [AttributeUsage(
@@ -72,5 +40,5 @@
     }
 
-    public static Dictionary<string, DataMemberAccessor> GetAutostorableAccessors(object obj) {
+    public static Dictionary<string, DataMemberAccessor> GetStorableAccessors(object obj) {
       Dictionary<string, DataMemberAccessor> storableAccessors =
         new Dictionary<string, DataMemberAccessor>();
Index: /trunk/sources/HeuristicLab.Persistence/3.3/Core/TypeExtensions.cs
===================================================================
--- /trunk/sources/HeuristicLab.Persistence/3.3/Core/TypeExtensions.cs	(revision 1555)
+++ /trunk/sources/HeuristicLab.Persistence/3.3/Core/TypeExtensions.cs	(revision 1555)
@@ -0,0 +1,16 @@
+﻿using System;
+using System.Text;
+
+namespace HeuristicLab.Persistence.Core {
+  
+  public static class TypeExtensions {
+
+    public static string VersionInvariantName(this Type type) {
+      StringBuilder sb = new StringBuilder();
+      TypeStringBuilder.BuildVersionInvariantName(type, sb);
+      return sb.ToString();
+    }
+
+  }  
+  
+}
Index: /trunk/sources/HeuristicLab.Persistence/3.3/Core/TypeStringBuilder.cs
===================================================================
--- /trunk/sources/HeuristicLab.Persistence/3.3/Core/TypeStringBuilder.cs	(revision 1554)
+++ /trunk/sources/HeuristicLab.Persistence/3.3/Core/TypeStringBuilder.cs	(revision 1555)
@@ -4,7 +4,7 @@
 namespace HeuristicLab.Persistence.Core {
 
-  public static class TypeStringBuilder {
+  internal static class TypeStringBuilder {
 
-    private static void BuildDeclaringTypeChain(Type type, StringBuilder sb) {
+    internal static void BuildDeclaringTypeChain(Type type, StringBuilder sb) {
       if ( type.DeclaringType != null ) {
         BuildDeclaringTypeChain(type.DeclaringType, sb);
@@ -13,5 +13,5 @@
     }
 
-    private static void BuildVersionInvariantName(Type type, StringBuilder sb) {
+    internal static void BuildVersionInvariantName(Type type, StringBuilder sb) {
       sb.Append(type.Namespace).Append('.');
       BuildDeclaringTypeChain(type, sb);
@@ -32,10 +32,5 @@
     }
 
-    public static string VersionInvariantName(this Type type) {
-      StringBuilder sb = new StringBuilder();
-      BuildVersionInvariantName(type, sb);
-      return sb.ToString();
-    }
-  }  
+  }
   
 }
Index: /trunk/sources/HeuristicLab.Persistence/3.3/Default/Decomposers/StorableDecomposer.cs
===================================================================
--- /trunk/sources/HeuristicLab.Persistence/3.3/Default/Decomposers/StorableDecomposer.cs	(revision 1554)
+++ /trunk/sources/HeuristicLab.Persistence/3.3/Default/Decomposers/StorableDecomposer.cs	(revision 1555)
@@ -15,5 +15,5 @@
     public bool CanDecompose(Type type) {
       return StorableAttribute.GetStorableMembers(type, false).Count() > 0 ||
-        EmptyStorableClassAttribute.IsEmpyStorable(type);
+        EmptyStorableClassAttribute.IsEmptyStorable(type);
 
     }
@@ -24,5 +24,5 @@
 
     public IEnumerable<Tag> Decompose(object obj) {
-      foreach (var mapping in StorableAttribute.GetAutostorableAccessors(obj)) {
+      foreach (var mapping in StorableAttribute.GetStorableAccessors(obj)) {
         yield return new Tag(mapping.Key, mapping.Value.Get());
       }
@@ -39,5 +39,5 @@
         memberDict.Add(iter.Current.Name, iter.Current);
       }      
-      foreach (var mapping in StorableAttribute.GetAutostorableAccessors(instance)) {
+      foreach (var mapping in StorableAttribute.GetStorableAccessors(instance)) {
         if (memberDict.ContainsKey(mapping.Key)) {
           mapping.Value.Set(memberDict[mapping.Key].Value);          
Index: /trunk/sources/HeuristicLab.Persistence/3.3/HeuristicLab.Persistence-3.3.csproj
===================================================================
--- /trunk/sources/HeuristicLab.Persistence/3.3/HeuristicLab.Persistence-3.3.csproj	(revision 1554)
+++ /trunk/sources/HeuristicLab.Persistence/3.3/HeuristicLab.Persistence-3.3.csproj	(revision 1555)
@@ -94,4 +94,6 @@
   <ItemGroup>
     <Compile Include="Core\Configuration.cs" />
+    <Compile Include="Core\EmptyStorableClassAttribute.cs" />
+    <Compile Include="Core\TypeExtensions.cs" />
     <Compile Include="Core\TypeMapping.cs" />
     <Compile Include="Core\TypeStringBuilder.cs" />
@@ -112,7 +114,7 @@
     <Compile Include="Core\DataMemberAccessor.cs" />
     <Compile Include="Default\Xml\Compact\IntList2XmlFormatter.cs" />
-    <Compile Include="Default\Xml\Primitive\Double2XmlFormatterBase.cs" />
-    <Compile Include="Default\Xml\Primitive\Decimal2XmlFormatterBase.cs" />
-    <Compile Include="Default\Xml\Primitive\Float2XmlFormatterBase.cs" />
+    <Compile Include="Default\Xml\Primitive\Double2XmlFormatter.cs" />
+    <Compile Include="Default\Xml\Primitive\Decimal2XmlFormatter.cs" />
+    <Compile Include="Default\Xml\Primitive\Float2XmlFormatter.cs" />
     <Compile Include="Default\Xml\Primitive\UInt2XmlFormatter.cs" />
     <Compile Include="Default\Xml\Primitive\Long2XmlFormatter.cs" />
