Index: branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/Algorithms/Algorithm.cs
===================================================================
--- branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/Algorithms/Algorithm.cs	(revision 13401)
+++ branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/Algorithms/Algorithm.cs	(revision 14711)
@@ -35,5 +35,5 @@
   /// </summary>
   [Item("Algorithm", "A base class for algorithms.")]
-  [StorableClass("71AEBFFD-0173-4289-82EE-482A6331226E")]
+  [StorableType("71AEBFFD-0173-4289-82EE-482A6331226E")]
   public abstract class Algorithm : ParameterizedNamedItem, IAlgorithm {
     public static new Image StaticItemImage {
@@ -218,9 +218,9 @@
       base.CollectParameterValues(values);
       values.Add("Algorithm Name", new StringValue(Name));
-      values.Add("Algorithm Type", new StringValue(this.GetType().GetPrettyName()));
+      values.Add("Algorithm MemberSelection", new StringValue(this.GetType().GetPrettyName()));
       if (Problem != null) {
         Problem.CollectParameterValues(values);
         values.Add("Problem Name", new StringValue(Problem.Name));
-        values.Add("Problem Type", new StringValue(Problem.GetType().GetPrettyName()));
+        values.Add("Problem MemberSelection", new StringValue(Problem.GetType().GetPrettyName()));
       }
     }
Index: branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/Algorithms/BasicAlgorithm.cs
===================================================================
--- branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/Algorithms/BasicAlgorithm.cs	(revision 13401)
+++ branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/Algorithms/BasicAlgorithm.cs	(revision 14711)
@@ -27,5 +27,5 @@
 
 namespace HeuristicLab.Optimization {
-  [StorableClass("A597E90A-6274-4C66-AF24-76BB71C3F811")]
+  [StorableType("A597E90A-6274-4C66-AF24-76BB71C3F811")]
   public abstract class BasicAlgorithm : Algorithm, IStorableContent {
     public string Filename { get; set; }
Index: branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/Algorithms/EngineAlgorithm.cs
===================================================================
--- branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/Algorithms/EngineAlgorithm.cs	(revision 13401)
+++ branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/Algorithms/EngineAlgorithm.cs	(revision 14711)
@@ -32,5 +32,5 @@
   /// </summary>
   [Item("EngineAlgorithm", "A base class for algorithms which use an engine for execution.")]
-  [StorableClass("21523BD2-1EDD-4192-92B6-22FA1DC0592E")]
+  [StorableType("21523BD2-1EDD-4192-92B6-22FA1DC0592E")]
   public abstract class EngineAlgorithm : Algorithm {
     [Storable]
Index: branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/Algorithms/HeuristicOptimizationAlgorithm.cs
===================================================================
--- branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/Algorithms/HeuristicOptimizationAlgorithm.cs	(revision 13401)
+++ branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/Algorithms/HeuristicOptimizationAlgorithm.cs	(revision 14711)
@@ -30,5 +30,5 @@
   /// </summary>
   [Item("Heuristic Optimization Algorithm", "A base class for heuristic optimization algorithms.")]
-  [StorableClass("6CB60BC5-35C5-4AD8-A82D-5A800100315F")]
+  [StorableType("6CB60BC5-35C5-4AD8-A82D-5A800100315F")]
   public abstract class HeuristicOptimizationAlgorithm : Algorithm {
     public new IHeuristicOptimizationProblem Problem {
Index: branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/Algorithms/HeuristicOptimizationEngineAlgorithm.cs
===================================================================
--- branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/Algorithms/HeuristicOptimizationEngineAlgorithm.cs	(revision 13401)
+++ branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/Algorithms/HeuristicOptimizationEngineAlgorithm.cs	(revision 14711)
@@ -30,5 +30,5 @@
   /// </summary>
   [Item("Heuristic Optimization Enigne Algorithm", "A base class for heuristic optimization algorithms using an execution engine.")]
-  [StorableClass("13648771-C7D3-4206-8306-CF50531A4221")]
+  [StorableType("13648771-C7D3-4206-8306-CF50531A4221")]
   public abstract class HeuristicOptimizationEngineAlgorithm : EngineAlgorithm {
     public new IHeuristicOptimizationProblem Problem {
Index: branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/Algorithms/UserDefinedAlgorithm.cs
===================================================================
--- branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/Algorithms/UserDefinedAlgorithm.cs	(revision 13401)
+++ branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/Algorithms/UserDefinedAlgorithm.cs	(revision 14711)
@@ -31,5 +31,5 @@
   [Item("User-Defined Algorithm", "An algorithm which can be defined by the user.")]
   [Creatable(CreatableAttribute.Categories.Algorithms, Priority = 100)]
-  [StorableClass("B9B72269-4180-4DEF-9F14-751FE7525283")]
+  [StorableType("B9B72269-4180-4DEF-9F14-751FE7525283")]
   public sealed class UserDefinedAlgorithm : EngineAlgorithm, IParameterizedItem, IStorableContent {
     public string Filename { get; set; }
Index: branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/BasicProblems/BasicProblem.cs
===================================================================
--- branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/BasicProblems/BasicProblem.cs	(revision 13401)
+++ branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/BasicProblems/BasicProblem.cs	(revision 14711)
@@ -29,5 +29,5 @@
 
 namespace HeuristicLab.Optimization {
-  [StorableClass("47428396-C522-42D9-A278-DB91DCDB0F56")]
+  [StorableType("47428396-C522-42D9-A278-DB91DCDB0F56")]
   public abstract class BasicProblem<TEncoding, TEvaluator> : HeuristicOptimizationProblem<TEvaluator, ISolutionCreator>, IProblemDefinition, IStorableContent
     where TEncoding : class, IEncoding
Index: branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/BasicProblems/Encoding.cs
===================================================================
--- branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/BasicProblems/Encoding.cs	(revision 13401)
+++ branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/BasicProblems/Encoding.cs	(revision 14711)
@@ -30,5 +30,5 @@
 namespace HeuristicLab.Optimization {
   [Item("Encoding", "Base class for describing different encodings.")]
-  [StorableClass("486F3AE1-9913-49DF-8CFB-0019CDF72C6F")]
+  [StorableType("486F3AE1-9913-49DF-8CFB-0019CDF72C6F")]
   public abstract class Encoding<T> : ParameterizedNamedItem, IEncoding
     where T : class,ISolutionCreator {
Index: branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/BasicProblems/MultiEncoding.cs
===================================================================
--- branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/BasicProblems/MultiEncoding.cs	(revision 13401)
+++ branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/BasicProblems/MultiEncoding.cs	(revision 14711)
@@ -30,5 +30,5 @@
 namespace HeuristicLab.Optimization {
   [Item("MultiEncoding", "Describes a combined encoding consisting of multiple simpler encodings.")]
-  [StorableClass("FCFCCD26-11DA-4555-B433-169C0C2E5211")]
+  [StorableType("FCFCCD26-11DA-4555-B433-169C0C2E5211")]
   public sealed class MultiEncoding : Encoding<MultiEncodingCreator> {
 
Index: branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/BasicProblems/MultiObjectiveBasicProblem.cs
===================================================================
--- branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/BasicProblems/MultiObjectiveBasicProblem.cs	(revision 13401)
+++ branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/BasicProblems/MultiObjectiveBasicProblem.cs	(revision 14711)
@@ -28,5 +28,5 @@
 
 namespace HeuristicLab.Optimization {
-  [StorableClass("411E8C64-53E5-487E-9CA5-0B6D4178689B")]
+  [StorableType("411E8C64-53E5-487E-9CA5-0B6D4178689B")]
   public abstract class MultiObjectiveBasicProblem<TEncoding> : BasicProblem<TEncoding, MultiObjectiveEvaluator>, IMultiObjectiveHeuristicOptimizationProblem, IMultiObjectiveProblemDefinition
   where TEncoding : class, IEncoding {
Index: branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/BasicProblems/Operators/MultiEncodingCreator.cs
===================================================================
--- branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/BasicProblems/Operators/MultiEncodingCreator.cs	(revision 13401)
+++ branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/BasicProblems/Operators/MultiEncodingCreator.cs	(revision 14711)
@@ -28,5 +28,5 @@
 namespace HeuristicLab.Optimization {
   [Item("MultiEncodingCreator", "Contains solution creators that together create a multi-encoding.")]
-  [StorableClass("5B26C225-9F47-49B3-AE4E-F46D3EFAB657")]
+  [StorableType("5B26C225-9F47-49B3-AE4E-F46D3EFAB657")]
   public sealed class MultiEncodingCreator : MultiEncodingOperator<ISolutionCreator>, ISolutionCreator {
     [StorableConstructor]
Index: branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/BasicProblems/Operators/MultiEncodingCrossover.cs
===================================================================
--- branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/BasicProblems/Operators/MultiEncodingCrossover.cs	(revision 13401)
+++ branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/BasicProblems/Operators/MultiEncodingCrossover.cs	(revision 14711)
@@ -26,5 +26,5 @@
 namespace HeuristicLab.Optimization {
   [Item("MultiEncoding Crossover", "Applies different crossovers to cross a multi-encoding.")]
-  [StorableClass("54127CE9-E98F-4CB2-96B8-BA161673560A")]
+  [StorableType("54127CE9-E98F-4CB2-96B8-BA161673560A")]
   public sealed class MultiEncodingCrossover : MultiEncodingOperator<ICrossover>, ICrossover {
     [StorableConstructor]
Index: branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/BasicProblems/Operators/MultiEncodingManipulator.cs
===================================================================
--- branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/BasicProblems/Operators/MultiEncodingManipulator.cs	(revision 13401)
+++ branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/BasicProblems/Operators/MultiEncodingManipulator.cs	(revision 14711)
@@ -26,5 +26,5 @@
 namespace HeuristicLab.Optimization {
   [Item("MultiEncoding Manipulator", "Applies different manipulators to change a multi-encoding.")]
-  [StorableClass("3A445BFC-C44C-49B8-90DF-C79DC9F8BA01")]
+  [StorableType("3A445BFC-C44C-49B8-90DF-C79DC9F8BA01")]
   public sealed class MultiEncodingManipulator : MultiEncodingOperator<IManipulator>, IManipulator {
     [StorableConstructor]
Index: branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/BasicProblems/Operators/MultiEncodingOperator.cs
===================================================================
--- branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/BasicProblems/Operators/MultiEncodingOperator.cs	(revision 13401)
+++ branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/BasicProblems/Operators/MultiEncodingOperator.cs	(revision 14711)
@@ -30,5 +30,5 @@
 
 namespace HeuristicLab.Optimization {
-  [StorableClass("3776B603-0E54-4124-90C0-F5C2612F3A89")]
+  [StorableType("3776B603-0E54-4124-90C0-F5C2612F3A89")]
   public abstract class MultiEncodingOperator<T> : Operator, IMultiEncodingOperator where T : class,IOperator {
     private List<IEncoding> encodings = new List<IEncoding>();
Index: branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/BasicProblems/Operators/MultiObjectiveAnalyzer.cs
===================================================================
--- branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/BasicProblems/Operators/MultiObjectiveAnalyzer.cs	(revision 13401)
+++ branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/BasicProblems/Operators/MultiObjectiveAnalyzer.cs	(revision 14711)
@@ -32,5 +32,5 @@
 namespace HeuristicLab.Optimization {
   [Item("Multi-objective Analyzer", "Calls the Analyze method of the problem definition.")]
-  [StorableClass("01475E97-13B0-446C-8A86-DE26817E2E44")]
+  [StorableType("01475E97-13B0-446C-8A86-DE26817E2E44")]
   public class MultiObjectiveAnalyzer : SingleSuccessorOperator, IMultiObjectiveAnalysisOperator, IStochasticOperator {
     public bool EnabledByDefault { get { return true; } }
Index: branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/BasicProblems/Operators/MultiObjectiveEvaluator.cs
===================================================================
--- branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/BasicProblems/Operators/MultiObjectiveEvaluator.cs	(revision 13401)
+++ branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/BasicProblems/Operators/MultiObjectiveEvaluator.cs	(revision 14711)
@@ -30,5 +30,5 @@
 namespace HeuristicLab.Optimization {
   [Item("Multi-objective Evaluator", "Calls the Evaluate method of the problem definition and writes the return value into the scope.")]
-  [StorableClass("3195FA68-99EF-4809-991B-E09397B506B7")]
+  [StorableType("3195FA68-99EF-4809-991B-E09397B506B7")]
   public class MultiObjectiveEvaluator : InstrumentedOperator, IMultiObjectiveEvaluationOperator, IStochasticOperator {
 
Index: branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/BasicProblems/Operators/SingleObjectiveAnalyzer.cs
===================================================================
--- branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/BasicProblems/Operators/SingleObjectiveAnalyzer.cs	(revision 13401)
+++ branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/BasicProblems/Operators/SingleObjectiveAnalyzer.cs	(revision 14711)
@@ -32,5 +32,5 @@
 namespace HeuristicLab.Optimization {
   [Item("Single-objective Analyzer", "Calls the script's Analyze method to be able to write into the results collection.")]
-  [StorableClass("D7583948-1268-4FF0-9D63-7B4A69BE7665")]
+  [StorableType("D7583948-1268-4FF0-9D63-7B4A69BE7665")]
   public sealed class SingleObjectiveAnalyzer : SingleSuccessorOperator, ISingleObjectiveAnalysisOperator, IAnalyzer, IStochasticOperator {
     public bool EnabledByDefault { get { return true; } }
Index: branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/BasicProblems/Operators/SingleObjectiveEvaluator.cs
===================================================================
--- branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/BasicProblems/Operators/SingleObjectiveEvaluator.cs	(revision 13401)
+++ branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/BasicProblems/Operators/SingleObjectiveEvaluator.cs	(revision 14711)
@@ -30,5 +30,5 @@
 namespace HeuristicLab.Optimization {
   [Item("Single-objective Evaluator", "Calls the script's Evaluate method to get the quality value of the parameter vector.")]
-  [StorableClass("9E4274AA-D7EF-46D0-A70D-DE558757DC02")]
+  [StorableType("9E4274AA-D7EF-46D0-A70D-DE558757DC02")]
   public sealed class SingleObjectiveEvaluator : InstrumentedOperator, ISingleObjectiveEvaluationOperator, IStochasticOperator {
 
Index: branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/BasicProblems/Operators/SingleObjectiveImprover.cs
===================================================================
--- branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/BasicProblems/Operators/SingleObjectiveImprover.cs	(revision 13401)
+++ branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/BasicProblems/Operators/SingleObjectiveImprover.cs	(revision 14711)
@@ -32,5 +32,5 @@
 namespace HeuristicLab.Optimization {
   [Item("Single-objective Improver", "Improves a solution by calling GetNeighbors and Evaluate of the corresponding problem definition.")]
-  [StorableClass("DACBB4E2-7471-4C2F-BDA2-B2496B316AC5")]
+  [StorableType("DACBB4E2-7471-4C2F-BDA2-B2496B316AC5")]
   public sealed class SingleObjectiveImprover : SingleSuccessorOperator, INeighborBasedOperator, IImprovementOperator, ISingleObjectiveEvaluationOperator, IStochasticOperator {
     public ILookupParameter<IRandom> RandomParameter {
Index: branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/BasicProblems/Operators/SingleObjectiveMoveEvaluator.cs
===================================================================
--- branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/BasicProblems/Operators/SingleObjectiveMoveEvaluator.cs	(revision 13401)
+++ branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/BasicProblems/Operators/SingleObjectiveMoveEvaluator.cs	(revision 14711)
@@ -30,5 +30,5 @@
 namespace HeuristicLab.Optimization {
   [Item("Single-objective MoveEvaluator", "Evaluates a parameter vector that results from a move.")]
-  [StorableClass("A262D062-6F15-438D-B7E8-A534C6C330E1")]
+  [StorableType("A262D062-6F15-438D-B7E8-A534C6C330E1")]
   public class SingleObjectiveMoveEvaluator : SingleSuccessorOperator, ISingleObjectiveEvaluationOperator, ISingleObjectiveMoveEvaluator, IStochasticOperator, ISingleObjectiveMoveOperator {
 
Index: branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/BasicProblems/Operators/SingleObjectiveMoveGenerator.cs
===================================================================
--- branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/BasicProblems/Operators/SingleObjectiveMoveGenerator.cs	(revision 13401)
+++ branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/BasicProblems/Operators/SingleObjectiveMoveGenerator.cs	(revision 14711)
@@ -33,5 +33,5 @@
 namespace HeuristicLab.Optimization {
   [Item("Single-objective MoveGenerator", "Calls the GetNeighbors method of the problem definition to obtain the moves.")]
-  [StorableClass("CEDAFD9E-A2A1-4401-B86F-865255DEE1DF")]
+  [StorableType("CEDAFD9E-A2A1-4401-B86F-865255DEE1DF")]
   public class SingleObjectiveMoveGenerator : SingleSuccessorOperator, INeighborBasedOperator, IMultiMoveGenerator, IStochasticOperator, ISingleObjectiveMoveOperator {
     public ILookupParameter<IRandom> RandomParameter {
Index: branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/BasicProblems/Operators/SingleObjectiveMoveMaker.cs
===================================================================
--- branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/BasicProblems/Operators/SingleObjectiveMoveMaker.cs	(revision 13401)
+++ branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/BasicProblems/Operators/SingleObjectiveMoveMaker.cs	(revision 14711)
@@ -30,5 +30,5 @@
 namespace HeuristicLab.Optimization {
   [Item("Single-objective MoveMaker", "Applies a move.")]
-  [StorableClass("410E9E93-5AA6-435F-B0B6-B978E0208965")]
+  [StorableType("410E9E93-5AA6-435F-B0B6-B978E0208965")]
   public class SingleObjectiveMoveMaker : InstrumentedOperator, IMoveMaker, ISingleObjectiveMoveOperator {
     public ILookupParameter<IEncoding> EncodingParameter {
Index: branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/BasicProblems/SingleObjectiveBasicProblem.cs
===================================================================
--- branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/BasicProblems/SingleObjectiveBasicProblem.cs	(revision 13401)
+++ branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/BasicProblems/SingleObjectiveBasicProblem.cs	(revision 14711)
@@ -29,5 +29,5 @@
 
 namespace HeuristicLab.Optimization {
-  [StorableClass("C7155A2C-2481-49BE-8EBF-1F96DD49090D")]
+  [StorableType("C7155A2C-2481-49BE-8EBF-1F96DD49090D")]
   public abstract class SingleObjectiveBasicProblem<TEncoding> : BasicProblem<TEncoding, SingleObjectiveEvaluator>,
     ISingleObjectiveProblemDefinition, ISingleObjectiveHeuristicOptimizationProblem
Index: branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/MetaOptimizers/BatchRun.cs
===================================================================
--- branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/MetaOptimizers/BatchRun.cs	(revision 13401)
+++ branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/MetaOptimizers/BatchRun.cs	(revision 14711)
@@ -37,5 +37,5 @@
   [Item("Batch Run", "A run in which an optimizer is executed a given number of times.")]
   [Creatable(CreatableAttribute.Categories.TestingAndAnalysis, Priority = 110)]
-  [StorableClass("3EF32A92-0598-4D45-9F90-4B4BA864AC4B")]
+  [StorableType("3EF32A92-0598-4D45-9F90-4B4BA864AC4B")]
   public sealed class BatchRun : NamedItem, IOptimizer, IStorableContent {
     public string Filename { get; set; }
Index: branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/MetaOptimizers/Experiment.cs
===================================================================
--- branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/MetaOptimizers/Experiment.cs	(revision 13401)
+++ branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/MetaOptimizers/Experiment.cs	(revision 14711)
@@ -36,5 +36,5 @@
   [Item("Experiment", "An experiment which contains multiple algorithms, batch runs or other experiments.")]
   [Creatable(CreatableAttribute.Categories.TestingAndAnalysis, Priority = 100)]
-  [StorableClass("7D89A82B-E202-4C4B-B9B1-57702B35B50B")]
+  [StorableType("7D89A82B-E202-4C4B-B9B1-57702B35B50B")]
   public sealed class Experiment : NamedItem, IOptimizer, IStorableContent {
     public string Filename { get; set; }
Index: branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/MetaOptimizers/TimeLimitRun.cs
===================================================================
--- branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/MetaOptimizers/TimeLimitRun.cs	(revision 13401)
+++ branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/MetaOptimizers/TimeLimitRun.cs	(revision 14711)
@@ -38,5 +38,5 @@
   [Item("Timelimit Run", "A run in which an optimizer is executed a certain maximum time.")]
   [Creatable(CreatableAttribute.Categories.TestingAndAnalysis, Priority = 115)]
-  [StorableClass("688135C3-B069-4A73-840C-4201A7E6BDA0")]
+  [StorableType("688135C3-B069-4A73-840C-4201A7E6BDA0")]
   public sealed class TimeLimitRun : NamedItem, IOptimizer, IStorableContent, INotifyPropertyChanged {
     public string Filename { get; set; }
Index: branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/OptimizerList.cs
===================================================================
--- branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/OptimizerList.cs	(revision 13401)
+++ branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/OptimizerList.cs	(revision 14711)
@@ -27,5 +27,5 @@
 namespace HeuristicLab.Optimization {
   [Item("Optimizer List", "Represents a list of optimizers.")]
-  [StorableClass("54E8C518-17E0-4E3E-AC03-ACBE1D3624C1")]
+  [StorableType("54E8C518-17E0-4E3E-AC03-ACBE1D3624C1")]
   public class OptimizerList : ItemList<IOptimizer> {
     public OptimizerList() : base() { }
Index: branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/Problems/HeuristicOptimizationProblem.cs
===================================================================
--- branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/Problems/HeuristicOptimizationProblem.cs	(revision 13401)
+++ branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/Problems/HeuristicOptimizationProblem.cs	(revision 14711)
@@ -28,5 +28,5 @@
 namespace HeuristicLab.Optimization {
   [Item("Heuristic Optimization Problem", "Represents the base class for a heuristic optimization problem.")]
-  [StorableClass("D32A23FF-11C3-4F81-B606-245CF3789E24")]
+  [StorableType("D32A23FF-11C3-4F81-B606-245CF3789E24")]
   public abstract class HeuristicOptimizationProblem<T, U> : Problem, IHeuristicOptimizationProblem
     where T : class,IEvaluator
Index: branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/Problems/MultiObjectiveHeuristicOptimizationProblem.cs
===================================================================
--- branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/Problems/MultiObjectiveHeuristicOptimizationProblem.cs	(revision 13401)
+++ branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/Problems/MultiObjectiveHeuristicOptimizationProblem.cs	(revision 14711)
@@ -28,5 +28,5 @@
 namespace HeuristicLab.Optimization {
   [Item("Multi-Objective Heuristic Optimization Problem", "A base class for multi-objective heuristic optimization problems.")]
-  [StorableClass("D293B357-1F82-4C4D-9152-B6349C7532A5")]
+  [StorableType("D293B357-1F82-4C4D-9152-B6349C7532A5")]
   public abstract class MultiObjectiveHeuristicOptimizationProblem<T, U> : HeuristicOptimizationProblem<T, U>, IMultiObjectiveHeuristicOptimizationProblem
     where T : class, IMultiObjectiveEvaluator
Index: branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/Problems/Problem.cs
===================================================================
--- branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/Problems/Problem.cs	(revision 13401)
+++ branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/Problems/Problem.cs	(revision 14711)
@@ -32,5 +32,5 @@
 namespace HeuristicLab.Optimization {
   [Item("Problem", "Represents the base class for a problem.")]
-  [StorableClass("C8A6A7E9-70ED-43D0-9540-B876B2A8ABA0")]
+  [StorableType("C8A6A7E9-70ED-43D0-9540-B876B2A8ABA0")]
   public abstract class Problem : ParameterizedNamedItem, IProblem {
     private const string OperatorsParameterName = "Operators";
Index: branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/Problems/SingleObjectiveHeuristicOptimizationProblem.cs
===================================================================
--- branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/Problems/SingleObjectiveHeuristicOptimizationProblem.cs	(revision 13401)
+++ branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/Problems/SingleObjectiveHeuristicOptimizationProblem.cs	(revision 14711)
@@ -28,5 +28,5 @@
 namespace HeuristicLab.Optimization {
   [Item("Single-Objective Heuristic OptimizationProblem", "A base class for single-objective heuristic optimization problems.")]
-  [StorableClass("57893B88-B112-4AE4-A24F-26D77591DBFA")]
+  [StorableType("57893B88-B112-4AE4-A24F-26D77591DBFA")]
   public abstract class SingleObjectiveHeuristicOptimizationProblem<T, U> : HeuristicOptimizationProblem<T, U>, ISingleObjectiveHeuristicOptimizationProblem
     where T : class, ISingleObjectiveEvaluator
Index: branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/Problems/UserDefinedProblem.cs
===================================================================
--- branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/Problems/UserDefinedProblem.cs	(revision 13401)
+++ branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/Problems/UserDefinedProblem.cs	(revision 14711)
@@ -39,5 +39,5 @@
   [Item("User-Defined Problem", "A problem which can be defined by the user.")]
   [Creatable(CreatableAttribute.Categories.Problems, Priority = 120)]
-  [StorableClass("F3DF503B-3FCA-4A80-B5E8-776699E6F13E")]
+  [StorableType("F3DF503B-3FCA-4A80-B5E8-776699E6F13E")]
   public sealed class UserDefinedProblem : ParameterizedNamedItem, ISingleObjectiveHeuristicOptimizationProblem, IStorableContent {
     public string Filename { get; set; }
@@ -235,5 +235,5 @@
 
     [Item("EmptyUserDefinedProblemEvaluator", "A dummy evaluator that will throw an exception when executed.")]
-    [StorableClass("00D4B39A-2E69-4842-9045-6E9D8F01F6EB")]
+    [StorableType("00D4B39A-2E69-4842-9045-6E9D8F01F6EB")]
     [NonDiscoverableType]
     private sealed class EmptyUserDefinedProblemEvaluator : ParameterizedNamedItem, ISingleObjectiveEvaluator {
Index: branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/Result.cs
===================================================================
--- branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/Result.cs	(revision 13401)
+++ branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/Result.cs	(revision 14711)
@@ -31,5 +31,5 @@
   /// </summary>
   [Item("Result", "A result which has a name and a data type and holds an IItem.")]
-  [StorableClass("BCBE0EA1-7868-4072-9F79-A91599F87665")]
+  [StorableType("BCBE0EA1-7868-4072-9F79-A91599F87665")]
   public sealed class Result : NamedItem, IResult, IStorableContent {
     public string Filename { get; set; }
@@ -63,5 +63,5 @@
           if ((value != null) && (!dataType.IsInstanceOfType(value)))
             throw new ArgumentException(
-              string.Format("Type mismatch. Value is not a \"{0}\".",
+              string.Format("MemberSelection mismatch. Value is not a \"{0}\".",
                             dataType.GetPrettyName())
             );
Index: branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/ResultCollection.cs
===================================================================
--- branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/ResultCollection.cs	(revision 13401)
+++ branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/ResultCollection.cs	(revision 14711)
@@ -26,5 +26,5 @@
 
 namespace HeuristicLab.Optimization {
-  [StorableClass("E7C40565-7D50-4402-850A-A1DDB9946774")]
+  [StorableType("E7C40565-7D50-4402-850A-A1DDB9946774")]
   [Item("ResultCollection", "Represents a collection of results.")]
   public class ResultCollection : NamedItemCollection<IResult> {
Index: branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/Run.cs
===================================================================
--- branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/Run.cs	(revision 13401)
+++ branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/Run.cs	(revision 14711)
@@ -34,5 +34,5 @@
   /// </summary>
   [Item("Run", "The parameters and results of an algorithm run.")]
-  [StorableClass("5B87FA7A-3934-4E61-AB73-0C788C03CB19")]
+  [StorableType("5B87FA7A-3934-4E61-AB73-0C788C03CB19")]
   public sealed class Run : NamedItem, IRun, IStorableContent {
     public string Filename { get; set; }
Index: branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/RunCollection.cs
===================================================================
--- branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/RunCollection.cs	(revision 13401)
+++ branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/RunCollection.cs	(revision 14711)
@@ -33,5 +33,5 @@
   [Item("Run Collection", "Represents a collection of runs.")]
   [Creatable(CreatableAttribute.Categories.TestingAndAnalysis, Priority = 120)]
-  [StorableClass("21D4C89D-E01A-42FD-85DB-4D65C714B285")]
+  [StorableType("21D4C89D-E01A-42FD-85DB-4D65C714B285")]
   public class RunCollection : ItemCollection<IRun>, IStringConvertibleMatrix, IStorableContent {
     public string Filename { get; set; }
Index: branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/RunCollectionConstraints/RunCollectionComparisonConstraint.cs
===================================================================
--- branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/RunCollectionConstraints/RunCollectionComparisonConstraint.cs	(revision 13401)
+++ branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/RunCollectionConstraints/RunCollectionComparisonConstraint.cs	(revision 14711)
@@ -28,5 +28,5 @@
 
 namespace HeuristicLab.Optimization {
-  [StorableClass("545B7B03-6478-4B95-8F76-EEEA87B30163")]
+  [StorableType("545B7B03-6478-4B95-8F76-EEEA87B30163")]
   [Item("RunCollectionComparisonConstraint", "A constraint which compares the members of the contained runs with the constraint data.")]
   public class RunCollectionComparisonConstraint : ComparisonConstraint, IRunCollectionColumnConstraint {
Index: branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/RunCollectionConstraints/RunCollectionConstraintCollection.cs
===================================================================
--- branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/RunCollectionConstraints/RunCollectionConstraintCollection.cs	(revision 13401)
+++ branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/RunCollectionConstraints/RunCollectionConstraintCollection.cs	(revision 14711)
@@ -25,5 +25,5 @@
 
 namespace HeuristicLab.Optimization {
-  [StorableClass("18387A90-ED47-41AC-884E-B41B4EED3679")]
+  [StorableType("18387A90-ED47-41AC-884E-B41B4EED3679")]
   [Item("RunCollectionConstraintCollection", "Represents a collection of constraints.")]
   public class RunCollectionConstraintCollection : ItemCollection<IRunCollectionConstraint> {
Index: branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/RunCollectionConstraints/RunCollectionContentConstraint.cs
===================================================================
--- branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/RunCollectionConstraints/RunCollectionContentConstraint.cs	(revision 13401)
+++ branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/RunCollectionConstraints/RunCollectionContentConstraint.cs	(revision 14711)
@@ -28,5 +28,5 @@
 
 namespace HeuristicLab.Optimization {
-  [StorableClass("CCC8D0A1-301A-41EE-A892-C3672989A80C")]
+  [StorableType("CCC8D0A1-301A-41EE-A892-C3672989A80C")]
   public class RunCollectionContentConstraint : Constraint, IRunCollectionConstraint {
     public new RunCollection ConstrainedValue {
Index: branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/RunCollectionConstraints/RunCollectionEqualityConstraint.cs
===================================================================
--- branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/RunCollectionConstraints/RunCollectionEqualityConstraint.cs	(revision 13401)
+++ branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/RunCollectionConstraints/RunCollectionEqualityConstraint.cs	(revision 14711)
@@ -28,5 +28,5 @@
 
 namespace HeuristicLab.Optimization {
-  [StorableClass("DB571126-0AB6-4C54-BF0C-A16DA31DFF15")]
+  [StorableType("DB571126-0AB6-4C54-BF0C-A16DA31DFF15")]
   [Item("RunCollectionEqualityConstraint", "A constraint which checks the members of the contained runs for equality to the constraint data.")]
   public class RunCollectionEqualityConstraint : EqualityConstraint, IRunCollectionColumnConstraint {
Index: branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/RunCollectionConstraints/RunCollectionTypeCompatiblityConstraint.cs
===================================================================
--- branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/RunCollectionConstraints/RunCollectionTypeCompatiblityConstraint.cs	(revision 13401)
+++ branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/RunCollectionConstraints/RunCollectionTypeCompatiblityConstraint.cs	(revision 14711)
@@ -28,5 +28,5 @@
 
 namespace HeuristicLab.Optimization {
-  [StorableClass("D2C4FB68-CC99-4011-B255-399EEF0B5744")]
+  [StorableType("D2C4FB68-CC99-4011-B255-399EEF0B5744")]
   [Item("RunCollectionTypeCompatibilityConstraint", "A constraint which checks the members of the contained runs for type compabitiliby to the constraint data.")]
   public class RunCollectionTypeCompatibilityConstraint : TypeCompatibilityConstraint, IRunCollectionColumnConstraint {
Index: branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/RunCollectionModification/Calculator.cs
===================================================================
--- branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/RunCollectionModification/Calculator.cs	(revision 13401)
+++ branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/RunCollectionModification/Calculator.cs	(revision 14711)
@@ -33,5 +33,5 @@
 namespace HeuristicLab.Optimization {
 
-  [StorableClass("9E68B940-C444-4961-8B4B-A8C021E7FCBA")]
+  [StorableType("9E68B940-C444-4961-8B4B-A8C021E7FCBA")]
   public class Calculator : IDeepCloneable {
 
@@ -214,5 +214,5 @@
       if (array is StringArray)
         return ((StringArray)array)[index];
-      throw new NotSupportedException(string.Format("Type {0} is not a supported array type", array.GetType().Name));
+      throw new NotSupportedException(string.Format("MemberSelection {0} is not a supported array type", array.GetType().Name));
     }
     #endregion
Index: branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/RunCollectionModification/RunCollectionDiscretizer.cs
===================================================================
--- branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/RunCollectionModification/RunCollectionDiscretizer.cs	(revision 13401)
+++ branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/RunCollectionModification/RunCollectionDiscretizer.cs	(revision 14711)
@@ -34,5 +34,5 @@
     "Creates several levels from the distribution of a certain result accross a run collection and " +
     "assigns a discretized value. Non-existing numbers as well as NaN and infinities are excluded from the caluclation.")]
-  [StorableClass("3DDD303F-8A78-4108-9439-441E5AC2523F")]
+  [StorableType("3DDD303F-8A78-4108-9439-441E5AC2523F")]
   public class RunCollectionDiscretizer : ParameterizedNamedItem, IRunCollectionModifier {
 
Index: branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/RunCollectionModification/RunCollectionFormulaModifer.cs
===================================================================
--- branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/RunCollectionModification/RunCollectionFormulaModifer.cs	(revision 13401)
+++ branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/RunCollectionModification/RunCollectionFormulaModifer.cs	(revision 14711)
@@ -33,5 +33,5 @@
 
   [Item("RunCollection Formula Modifier", "Modifies a RunCollection by adding results using the given formula.")]
-  [StorableClass("2DBB38CC-E8F5-4B3A-B341-DDED7B95BBF4")]
+  [StorableType("2DBB38CC-E8F5-4B3A-B341-DDED7B95BBF4")]
   public class RunCollectionFormulaModifer : ParameterizedNamedItem, IRunCollectionModifier {
 
Index: branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/RunCollectionModification/RunCollectionGroupCreater.cs
===================================================================
--- branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/RunCollectionModification/RunCollectionGroupCreater.cs	(revision 13401)
+++ branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/RunCollectionModification/RunCollectionGroupCreater.cs	(revision 14711)
@@ -32,5 +32,5 @@
 
   [Item("RunCollection Group Creater", "Regroups existing runs according to equal values in GroupBy and prefixes them according to their value in Prefix.")]
-  [StorableClass("EB0E504A-6DDF-4F6D-9D57-987888FF26CD")]
+  [StorableType("EB0E504A-6DDF-4F6D-9D57-987888FF26CD")]
   public class RunCollectionGroupCreater : ParameterizedNamedItem, IRunCollectionModifier {
     
Index: branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/RunCollectionModification/RunCollectionRunRemover.cs
===================================================================
--- branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/RunCollectionModification/RunCollectionRunRemover.cs	(revision 13401)
+++ branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/RunCollectionModification/RunCollectionRunRemover.cs	(revision 14711)
@@ -27,5 +27,5 @@
 namespace HeuristicLab.Optimization {
   [Item("RunCollection Run Remover", "Removes all currently visible runs. Use the filtering tab to selectively remove runs.")]
-  [StorableClass("DBF9E46E-6139-4B46-9C1B-47D9234222DE")]
+  [StorableType("DBF9E46E-6139-4B46-9C1B-47D9234222DE")]
   public class RunCollectionRunRemover : ParameterizedNamedItem, IRunCollectionModifier {
 
Index: branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/RunCollectionModification/RunCollectionSorter.cs
===================================================================
--- branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/RunCollectionModification/RunCollectionSorter.cs	(revision 13401)
+++ branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/RunCollectionModification/RunCollectionSorter.cs	(revision 14711)
@@ -32,5 +32,5 @@
 namespace HeuristicLab.Optimization {
   [Item("RunCollection Sorter", "Sorts a run collection according the specified key variable.")]
-  [StorableClass("82F029EE-BE76-4F34-A891-8D255FE6061B")]
+  [StorableType("82F029EE-BE76-4F34-A891-8D255FE6061B")]
   public class RunCollectionSorter : ParameterizedNamedItem, IRunCollectionModifier {
 
Index: branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/RunCollectionModification/RunCollectionValueRemover.cs
===================================================================
--- branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/RunCollectionModification/RunCollectionValueRemover.cs	(revision 13401)
+++ branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/RunCollectionModification/RunCollectionValueRemover.cs	(revision 14711)
@@ -33,5 +33,5 @@
 
   [Item("RunCollection Value Remover", "Modifies a RunCollection by removing results or parameters.")]
-  [StorableClass("39713EC7-0916-44BE-AE3A-0713182C92A2")]
+  [StorableType("39713EC7-0916-44BE-AE3A-0713182C92A2")]
   public class RunCollectionValueRemover : ParameterizedNamedItem, IRunCollectionModifier {
     
Index: branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/Termination/ComparisonTerminator.cs
===================================================================
--- branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/Termination/ComparisonTerminator.cs	(revision 13401)
+++ branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/Termination/ComparisonTerminator.cs	(revision 14711)
@@ -30,5 +30,5 @@
 namespace HeuristicLab.Optimization {
   [Item("ComparisonTerminator", "An termination criterion which compares two values.")]
-  [StorableClass("99FAA1C3-8BC0-4D63-948F-BE66644D5757")]
+  [StorableType("99FAA1C3-8BC0-4D63-948F-BE66644D5757")]
   public class ComparisonTerminator<T> : ThresholdTerminator<T> where T : class, IItem, IComparable, IStringConvertibleValue, new() {
     public ILookupParameter<T> ComparisonValueParameter {
Index: branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/Termination/ExecutionTimeTerminator.cs
===================================================================
--- branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/Termination/ExecutionTimeTerminator.cs	(revision 13401)
+++ branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/Termination/ExecutionTimeTerminator.cs	(revision 14711)
@@ -28,5 +28,5 @@
 namespace HeuristicLab.Optimization {
   [Item("ExecutionTimeTerminator", "A termination criterion based on execution time of an algorithm.")]
-  [StorableClass("DCF264FC-0234-4CBA-AD20-1F8B56EAF08E")]
+  [StorableType("DCF264FC-0234-4CBA-AD20-1F8B56EAF08E")]
   public class ExecutionTimeTerminator : ThresholdTerminator<TimeSpanValue> {
 
Index: branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/Termination/MultiTerminator.cs
===================================================================
--- branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/Termination/MultiTerminator.cs	(revision 13401)
+++ branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/Termination/MultiTerminator.cs	(revision 14711)
@@ -33,5 +33,5 @@
 namespace HeuristicLab.Optimization {
   [Item("MultiTerminator", "A multi operator, containing termination criteria.")]
-  [StorableClass("315D829D-B20E-4ADD-B5F5-478763DC9407")]
+  [StorableType("315D829D-B20E-4ADD-B5F5-478763DC9407")]
   public sealed class MultiTerminator : CheckedMultiOperator<ITerminator>, ITerminator {
     public static new Image StaticItemImage {
Index: branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/Termination/SingleObjectiveQualityTerminator.cs
===================================================================
--- branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/Termination/SingleObjectiveQualityTerminator.cs	(revision 13401)
+++ branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/Termination/SingleObjectiveQualityTerminator.cs	(revision 14711)
@@ -27,5 +27,5 @@
 namespace HeuristicLab.Optimization {
   [Item("SingleObjectiveQualityTerminator", "A termination criterion which uses a quality parameter (eg. current best quality) for termination.")]
-  [StorableClass("DD460793-391F-4C08-AC4E-D83B76B98330")]
+  [StorableType("DD460793-391F-4C08-AC4E-D83B76B98330")]
   public class SingleObjectiveQualityTerminator : ComparisonTerminator<DoubleValue> {
     [StorableConstructor]
Index: branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/Termination/TerminationOperator.cs
===================================================================
--- branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/Termination/TerminationOperator.cs	(revision 13401)
+++ branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/Termination/TerminationOperator.cs	(revision 14711)
@@ -29,5 +29,5 @@
 namespace HeuristicLab.Optimization {
   [Item("TerminationOperator", "An operator which either calls the terminate- or the continue branch.")]
-  [StorableClass("F4E2163B-B555-4186-9C8A-0E3B86C44EC2")]
+  [StorableType("F4E2163B-B555-4186-9C8A-0E3B86C44EC2")]
   public sealed class TerminationOperator : InstrumentedOperator, ITerminationBasedOperator {
     public ILookupParameter<ITerminator> TerminatorParameter {
Index: branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/Termination/Terminator.cs
===================================================================
--- branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/Termination/Terminator.cs	(revision 13401)
+++ branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/Termination/Terminator.cs	(revision 14711)
@@ -31,5 +31,5 @@
 namespace HeuristicLab.Optimization {
   [Item("Terminator", "A base class for all termination criteria.")]
-  [StorableClass("73667E1B-A066-4C00-BE8B-BC1BB2F432B9")]
+  [StorableType("73667E1B-A066-4C00-BE8B-BC1BB2F432B9")]
   public abstract class Terminator : SingleSuccessorOperator, ITerminator {
     public static new Image StaticItemImage {
@@ -62,5 +62,5 @@
     public override void CollectParameterValues(IDictionary<string, IItem> values) {
       base.CollectParameterValues(values);
-      values["Type"] = new StringValue(GetType().GetPrettyName(false));
+      values["MemberSelection"] = new StringValue(GetType().GetPrettyName(false));
     }
   }
Index: branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/Termination/ThresholdTerminator.cs
===================================================================
--- branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/Termination/ThresholdTerminator.cs	(revision 13401)
+++ branches/PersistenceOverhaul/HeuristicLab.Optimization/3.3/Termination/ThresholdTerminator.cs	(revision 14711)
@@ -29,5 +29,5 @@
 namespace HeuristicLab.Optimization {
   [Item("ThresholdTerminator", "Base class for all termination criteria which specifies some threshold.")]
-  [StorableClass("C982ECC5-F72D-452C-943B-C3001A58E034")]
+  [StorableType("C982ECC5-F72D-452C-943B-C3001A58E034")]
   public abstract class ThresholdTerminator<T> : Terminator where T : class, IItem, IStringConvertibleValue, new() {
     [Storable]
