Index: branches/HeuristicLab.BinPacking/HeuristicLab.Problems.BinPacking.Views/3.3/HeuristicLab.Problems.BinPacking.Views-3.3.csproj
===================================================================
--- branches/HeuristicLab.BinPacking/HeuristicLab.Problems.BinPacking.Views/3.3/HeuristicLab.Problems.BinPacking.Views-3.3.csproj	(revision 13460)
+++ branches/HeuristicLab.BinPacking/HeuristicLab.Problems.BinPacking.Views/3.3/HeuristicLab.Problems.BinPacking.Views-3.3.csproj	(revision 13461)
@@ -120,7 +120,4 @@
       <Private>False</Private>
     </Reference>
-    <Reference Include="HeuristicLab.Data-3.3, Version=3.3.0.0, Culture=neutral, PublicKeyToken=ba48961d6f65dcec, processorArchitecture=MSIL">
-      <Private>False</Private>
-    </Reference>
     <Reference Include="HeuristicLab.MainForm-3.3, Version=3.3.0.0, Culture=neutral, PublicKeyToken=ba48961d6f65dcec, processorArchitecture=MSIL">
       <Private>False</Private>
@@ -145,8 +142,6 @@
     <Reference Include="System" />
     <Reference Include="System.Core" />
-    <Reference Include="System.Data" />
     <Reference Include="System.Drawing" />
     <Reference Include="System.Windows.Forms" />
-    <Reference Include="System.Xml" />
   </ItemGroup>
   <ItemGroup>
Index: branches/HeuristicLab.BinPacking/HeuristicLab.Problems.BinPacking.Views/3.3/Plugin.cs.frame
===================================================================
--- branches/HeuristicLab.BinPacking/HeuristicLab.Problems.BinPacking.Views/3.3/Plugin.cs.frame	(revision 13460)
+++ branches/HeuristicLab.BinPacking/HeuristicLab.Problems.BinPacking.Views/3.3/Plugin.cs.frame	(revision 13461)
@@ -29,8 +29,12 @@
   [PluginFile("HeuristicLab.Problems.BinPacking.Views-3.3.dll", PluginFileType.Assembly)]
   [PluginFile("PackingPlanVisualizations.dll", PluginFileType.Assembly)]
-  [PluginDependency("HeuristicLab.Common", "3.3")]
-  [PluginDependency("HeuristicLab.Common.Resources", "3.3")]
   [PluginDependency("HeuristicLab.Core", "3.3")]
-  [PluginDependency("HeuristicLab.Persistence", "3.3")]
+  [PluginDependency("HeuristicLab.Core.Views", "3.3")]
+  [PluginDependency("HeuristicLab.Optimization.Views", "3.3")]
+  [PluginDependency("HeuristicLab.Problems.BinPacking", "3.3")]
+  [PluginDependency("HeuristicLab.MainForm", "3.3")]
+  [PluginDependency("HeuristicLab.Collections", "3.3")]
+  [PluginDependency("HeuristicLab.MainForm.WindowsForms", "3.3")]
+  [PluginDependency("HeuristicLab.Optimization", "3.3")]
   [PluginDependency("HeuristicLab.SharpDX", "2.6.3")]
   public class HeuristicLabProblemsBinPackingViewsPlugin : PluginBase {
Index: branches/HeuristicLab.BinPacking/HeuristicLab.Problems.BinPacking.Views/3.3/Shapes/CuboidPackingItemView.Designer.cs
===================================================================
--- branches/HeuristicLab.BinPacking/HeuristicLab.Problems.BinPacking.Views/3.3/Shapes/CuboidPackingItemView.Designer.cs	(revision 13460)
+++ branches/HeuristicLab.BinPacking/HeuristicLab.Problems.BinPacking.Views/3.3/Shapes/CuboidPackingItemView.Designer.cs	(revision 13461)
@@ -49,11 +49,5 @@
     private void InitializeComponent() {
       this.packingPlan3D1 = new PackingPlanVisualizations.PackingPlan3D();
-      ((System.ComponentModel.ISupportInitialize)(this.errorProvider)).BeginInit();
       this.SuspendLayout();
-      // 
-      // nameTextBox
-      // 
-      this.errorProvider.SetIconAlignment(this.nameTextBox, System.Windows.Forms.ErrorIconAlignment.MiddleLeft);
-      this.errorProvider.SetIconPadding(this.nameTextBox, 2);
       // 
       // packingPlan3D1
@@ -73,9 +67,5 @@
       this.Name = "CuboidPackingShapeView";
       this.Size = new System.Drawing.Size(351, 299);
-      this.Controls.SetChildIndex(this.nameLabel, 0);
-      this.Controls.SetChildIndex(this.nameTextBox, 0);
-      this.Controls.SetChildIndex(this.infoLabel, 0);
       this.Controls.SetChildIndex(this.packingPlan3D1, 0);
-      ((System.ComponentModel.ISupportInitialize)(this.errorProvider)).EndInit();
       this.ResumeLayout(false);
       this.PerformLayout();
Index: branches/HeuristicLab.BinPacking/HeuristicLab.Problems.BinPacking.Views/3.3/Shapes/CuboidPackingItemView.cs
===================================================================
--- branches/HeuristicLab.BinPacking/HeuristicLab.Problems.BinPacking.Views/3.3/Shapes/CuboidPackingItemView.cs	(revision 13460)
+++ branches/HeuristicLab.BinPacking/HeuristicLab.Problems.BinPacking.Views/3.3/Shapes/CuboidPackingItemView.cs	(revision 13461)
@@ -27,5 +27,5 @@
   [View("View for a cuboid packing item.")]
   [Content(typeof(CuboidPackingItem), true)]
-  public partial class CuboidPackingItemView : NamedItemView {
+  public partial class CuboidPackingItemView : ItemView {
     public CuboidPackingItemView() {
       InitializeComponent();
Index: branches/HeuristicLab.BinPacking/HeuristicLab.Problems.BinPacking.Views/3.3/Shapes/CuboidPackingShapeView.Designer.cs
===================================================================
--- branches/HeuristicLab.BinPacking/HeuristicLab.Problems.BinPacking.Views/3.3/Shapes/CuboidPackingShapeView.Designer.cs	(revision 13460)
+++ branches/HeuristicLab.BinPacking/HeuristicLab.Problems.BinPacking.Views/3.3/Shapes/CuboidPackingShapeView.Designer.cs	(revision 13461)
@@ -49,11 +49,5 @@
     private void InitializeComponent() {
       this.packingPlan3D1 = new PackingPlanVisualizations.PackingPlan3D();
-      ((System.ComponentModel.ISupportInitialize)(this.errorProvider)).BeginInit();
       this.SuspendLayout();
-      // 
-      // nameTextBox
-      // 
-      this.errorProvider.SetIconAlignment(this.nameTextBox, System.Windows.Forms.ErrorIconAlignment.MiddleLeft);
-      this.errorProvider.SetIconPadding(this.nameTextBox, 2);
       // 
       // packingPlan3D1
@@ -73,9 +67,5 @@
       this.Name = "CuboidPackingShapeView";
       this.Size = new System.Drawing.Size(351, 299);
-      this.Controls.SetChildIndex(this.nameLabel, 0);
-      this.Controls.SetChildIndex(this.nameTextBox, 0);
-      this.Controls.SetChildIndex(this.infoLabel, 0);
       this.Controls.SetChildIndex(this.packingPlan3D1, 0);
-      ((System.ComponentModel.ISupportInitialize)(this.errorProvider)).EndInit();
       this.ResumeLayout(false);
       this.PerformLayout();
Index: branches/HeuristicLab.BinPacking/HeuristicLab.Problems.BinPacking.Views/3.3/Shapes/CuboidPackingShapeView.cs
===================================================================
--- branches/HeuristicLab.BinPacking/HeuristicLab.Problems.BinPacking.Views/3.3/Shapes/CuboidPackingShapeView.cs	(revision 13460)
+++ branches/HeuristicLab.BinPacking/HeuristicLab.Problems.BinPacking.Views/3.3/Shapes/CuboidPackingShapeView.cs	(revision 13461)
@@ -27,5 +27,5 @@
   [View("View for a cuboid shape.")]
   [Content(typeof(CuboidPackingShape), true)]
-  public partial class CuboidPackingShapeView : NamedItemView {
+  public partial class CuboidPackingShapeView : ItemView {
     public CuboidPackingShapeView() {
       InitializeComponent();
@@ -45,5 +45,4 @@
       } else {
         Redraw(Content);
-        Content.Name = "XX";
         packingPlan3D1.StartRendering();
       }
Index: branches/HeuristicLab.BinPacking/HeuristicLab.Problems.BinPacking.Views/3.3/Shapes/RectangularPackingItemView.Designer.cs
===================================================================
--- branches/HeuristicLab.BinPacking/HeuristicLab.Problems.BinPacking.Views/3.3/Shapes/RectangularPackingItemView.Designer.cs	(revision 13460)
+++ branches/HeuristicLab.BinPacking/HeuristicLab.Problems.BinPacking.Views/3.3/Shapes/RectangularPackingItemView.Designer.cs	(revision 13461)
@@ -46,11 +46,5 @@
     private void InitializeComponent() {
       this.packingPlan2D = new PackingPlanVisualizations.PackingPlan2D();
-      ((System.ComponentModel.ISupportInitialize)(this.errorProvider)).BeginInit();
       this.SuspendLayout();
-      // 
-      // nameTextBox
-      // 
-      this.errorProvider.SetIconAlignment(this.nameTextBox, System.Windows.Forms.ErrorIconAlignment.MiddleLeft);
-      this.errorProvider.SetIconPadding(this.nameTextBox, 2);
       // 
       // packingPlan2D
@@ -70,9 +64,5 @@
       this.Name = "PackingPlanView";
       this.Size = new System.Drawing.Size(351, 299);
-      this.Controls.SetChildIndex(this.nameLabel, 0);
-      this.Controls.SetChildIndex(this.nameTextBox, 0);
-      this.Controls.SetChildIndex(this.infoLabel, 0);
       this.Controls.SetChildIndex(this.packingPlan2D, 0);
-      ((System.ComponentModel.ISupportInitialize)(this.errorProvider)).EndInit();
       this.ResumeLayout(false);
       this.PerformLayout();
Index: branches/HeuristicLab.BinPacking/HeuristicLab.Problems.BinPacking.Views/3.3/Shapes/RectangularPackingItemView.cs
===================================================================
--- branches/HeuristicLab.BinPacking/HeuristicLab.Problems.BinPacking.Views/3.3/Shapes/RectangularPackingItemView.cs	(revision 13460)
+++ branches/HeuristicLab.BinPacking/HeuristicLab.Problems.BinPacking.Views/3.3/Shapes/RectangularPackingItemView.cs	(revision 13461)
@@ -27,5 +27,5 @@
   [View("View for a rectangular packing item.")]
   [Content(typeof(RectangularPackingItem), true)]
-  public partial class RectangularPackingItemView : NamedItemView {
+  public partial class RectangularPackingItemView : ItemView {
     public RectangularPackingItemView() {
       InitializeComponent();
Index: branches/HeuristicLab.BinPacking/HeuristicLab.Problems.BinPacking.Views/3.3/Shapes/RectangularPackingShapeView.Designer.cs
===================================================================
--- branches/HeuristicLab.BinPacking/HeuristicLab.Problems.BinPacking.Views/3.3/Shapes/RectangularPackingShapeView.Designer.cs	(revision 13460)
+++ branches/HeuristicLab.BinPacking/HeuristicLab.Problems.BinPacking.Views/3.3/Shapes/RectangularPackingShapeView.Designer.cs	(revision 13461)
@@ -46,11 +46,5 @@
     private void InitializeComponent() {
       this.packingPlan2D = new PackingPlanVisualizations.PackingPlan2D();
-      ((System.ComponentModel.ISupportInitialize)(this.errorProvider)).BeginInit();
       this.SuspendLayout();
-      // 
-      // nameTextBox
-      // 
-      this.errorProvider.SetIconAlignment(this.nameTextBox, System.Windows.Forms.ErrorIconAlignment.MiddleLeft);
-      this.errorProvider.SetIconPadding(this.nameTextBox, 2);
       // 
       // packingPlan2D
@@ -70,9 +64,5 @@
       this.Name = "PackingPlanView";
       this.Size = new System.Drawing.Size(351, 299);
-      this.Controls.SetChildIndex(this.nameLabel, 0);
-      this.Controls.SetChildIndex(this.nameTextBox, 0);
-      this.Controls.SetChildIndex(this.infoLabel, 0);
       this.Controls.SetChildIndex(this.packingPlan2D, 0);
-      ((System.ComponentModel.ISupportInitialize)(this.errorProvider)).EndInit();
       this.ResumeLayout(false);
       this.PerformLayout();
Index: branches/HeuristicLab.BinPacking/HeuristicLab.Problems.BinPacking.Views/3.3/Shapes/RectangularPackingShapeView.cs
===================================================================
--- branches/HeuristicLab.BinPacking/HeuristicLab.Problems.BinPacking.Views/3.3/Shapes/RectangularPackingShapeView.cs	(revision 13460)
+++ branches/HeuristicLab.BinPacking/HeuristicLab.Problems.BinPacking.Views/3.3/Shapes/RectangularPackingShapeView.cs	(revision 13461)
@@ -27,5 +27,5 @@
   [View("View for a rectangular shape.")]
   [Content(typeof(RectangularPackingShape), true)]
-  public partial class RectangularPackingShapeView : NamedItemView {
+  public partial class RectangularPackingShapeView : ItemView {
     public RectangularPackingShapeView() {
       InitializeComponent();
Index: branches/HeuristicLab.BinPacking/HeuristicLab.Problems.BinPacking/3.3/Encodings/PackingSequence/PackingSequenceInversionManipulator.cs
===================================================================
--- branches/HeuristicLab.BinPacking/HeuristicLab.Problems.BinPacking/3.3/Encodings/PackingSequence/PackingSequenceInversionManipulator.cs	(revision 13460)
+++ branches/HeuristicLab.BinPacking/HeuristicLab.Problems.BinPacking/3.3/Encodings/PackingSequence/PackingSequenceInversionManipulator.cs	(revision 13461)
@@ -33,8 +33,8 @@
     [StorableConstructor]
     protected PackingSequenceInversionManipulator(bool deserializing) : base(deserializing) { }
-    protected PackingSequenceInversionManipulator(PackingSequenceManipulator original, Cloner cloner) : base(original, cloner) { }
+    protected PackingSequenceInversionManipulator(PackingSequenceInversionManipulator original, Cloner cloner) : base(original, cloner) { }
     public PackingSequenceInversionManipulator()
       : base() {
-        EncodedSolutionParameter.ActualName = "PackingSequence";
+      EncodedSolutionParameter.ActualName = "PackingSequence";
     }
     public override IDeepCloneable Clone(Cloner cloner) {
@@ -44,5 +44,5 @@
     protected override void Manipulate(IRandom random, PackingSequenceEncoding individual) {
       InversionManipulator.Apply(random, individual.PackingSequence);
-    }   
+    }
   }
 }
Index: branches/HeuristicLab.BinPacking/HeuristicLab.Problems.BinPacking/3.3/Encodings/PackingSequence/PackingSequenceScrambleManipulator.cs
===================================================================
--- branches/HeuristicLab.BinPacking/HeuristicLab.Problems.BinPacking/3.3/Encodings/PackingSequence/PackingSequenceScrambleManipulator.cs	(revision 13460)
+++ branches/HeuristicLab.BinPacking/HeuristicLab.Problems.BinPacking/3.3/Encodings/PackingSequence/PackingSequenceScrambleManipulator.cs	(revision 13461)
@@ -32,5 +32,5 @@
     [StorableConstructor]
     protected PackingSequenceScrambleManipulator(bool deserializing) : base(deserializing) { }
-    protected PackingSequenceScrambleManipulator(PackingSequenceManipulator original, Cloner cloner) : base(original, cloner) { }
+    protected PackingSequenceScrambleManipulator(PackingSequenceScrambleManipulator original, Cloner cloner) : base(original, cloner) { }
     public PackingSequenceScrambleManipulator()
       : base() {
Index: branches/HeuristicLab.BinPacking/HeuristicLab.Problems.BinPacking/3.3/HeuristicLab.Problems.BinPacking-3.3.csproj
===================================================================
--- branches/HeuristicLab.BinPacking/HeuristicLab.Problems.BinPacking/3.3/HeuristicLab.Problems.BinPacking-3.3.csproj	(revision 13460)
+++ branches/HeuristicLab.BinPacking/HeuristicLab.Problems.BinPacking/3.3/HeuristicLab.Problems.BinPacking-3.3.csproj	(revision 13461)
@@ -155,5 +155,4 @@
     <Reference Include="System.Drawing" />
     <Reference Include="System.IO.Compression" />
-    <Reference Include="System.IO.Compression.FileSystem" />
     <Reference Include="System.Windows.Forms" />
   </ItemGroup>
Index: branches/HeuristicLab.BinPacking/HeuristicLab.Problems.BinPacking/3.3/Interfaces/IPackingShape.cs
===================================================================
--- branches/HeuristicLab.BinPacking/HeuristicLab.Problems.BinPacking/3.3/Interfaces/IPackingShape.cs	(revision 13460)
+++ branches/HeuristicLab.BinPacking/HeuristicLab.Problems.BinPacking/3.3/Interfaces/IPackingShape.cs	(revision 13461)
@@ -23,5 +23,5 @@
 
 namespace HeuristicLab.Problems.BinPacking.Interfaces {
-  public interface IPackingShape : INamedItem {
+  public interface IPackingShape : IItem {
   }
 }
Index: branches/HeuristicLab.BinPacking/HeuristicLab.Problems.BinPacking/3.3/PackingBin/CuboidPackingBin.cs
===================================================================
--- branches/HeuristicLab.BinPacking/HeuristicLab.Problems.BinPacking/3.3/PackingBin/CuboidPackingBin.cs	(revision 13460)
+++ branches/HeuristicLab.BinPacking/HeuristicLab.Problems.BinPacking/3.3/PackingBin/CuboidPackingBin.cs	(revision 13461)
@@ -31,6 +31,6 @@
   [StorableClass]
   public class CuboidPackingBin : CuboidPackingShape, IPackingBin {
-    
-    public CuboidPackingBin(int width, int height, int depth) : base (width, height, depth) {}
+
+    public CuboidPackingBin(int width, int height, int depth) : base(width, height, depth) { }
 
     [StorableConstructor]
@@ -42,6 +42,6 @@
       return new CuboidPackingBin(this, cloner);
     }
-    public CuboidPackingBin() : base() {
-
+    public CuboidPackingBin()
+      : base() {
     }
   }
Index: branches/HeuristicLab.BinPacking/HeuristicLab.Problems.BinPacking/3.3/PackingBin/RectangularPackingBin.cs
===================================================================
--- branches/HeuristicLab.BinPacking/HeuristicLab.Problems.BinPacking/3.3/PackingBin/RectangularPackingBin.cs	(revision 13460)
+++ branches/HeuristicLab.BinPacking/HeuristicLab.Problems.BinPacking/3.3/PackingBin/RectangularPackingBin.cs	(revision 13461)
@@ -32,5 +32,6 @@
 
     public RectangularPackingBin(int width, int height) : base(width, height) { }
-    public RectangularPackingBin() : base() {
+    public RectangularPackingBin()
+      : base() {
 
     }
@@ -40,5 +41,5 @@
     protected RectangularPackingBin(RectangularPackingBin original, Cloner cloner)
       : base(original, cloner) {
-    }              
+    }
     public override IDeepCloneable Clone(Cloner cloner) {
       return new RectangularPackingBin(this, cloner);
Index: branches/HeuristicLab.BinPacking/HeuristicLab.Problems.BinPacking/3.3/PackingItem/CuboidPackingItem.cs
===================================================================
--- branches/HeuristicLab.BinPacking/HeuristicLab.Problems.BinPacking/3.3/PackingItem/CuboidPackingItem.cs	(revision 13460)
+++ branches/HeuristicLab.BinPacking/HeuristicLab.Problems.BinPacking/3.3/PackingItem/CuboidPackingItem.cs	(revision 13461)
@@ -51,5 +51,4 @@
     }
     public CuboidPackingItem() : base() {
-
     }
 
Index: branches/HeuristicLab.BinPacking/HeuristicLab.Problems.BinPacking/3.3/PackingItem/RectangularPackingItem.cs
===================================================================
--- branches/HeuristicLab.BinPacking/HeuristicLab.Problems.BinPacking/3.3/PackingItem/RectangularPackingItem.cs	(revision 13460)
+++ branches/HeuristicLab.BinPacking/HeuristicLab.Problems.BinPacking/3.3/PackingItem/RectangularPackingItem.cs	(revision 13461)
@@ -31,5 +31,5 @@
   [Item("RectangularPackingItem", "Represents a rectangular packing-item for bin-packing problems.")]
   [StorableClass]
-  public class RectangularPackingItem : RectangularPackingShape, IPackingItem{
+  public class RectangularPackingItem : RectangularPackingShape, IPackingItem {
 
     public RectangularPackingBin TargetBin { get; set; }
@@ -50,9 +50,10 @@
       return new RectangularPackingItem(this, cloner);
     }
-    public RectangularPackingItem() : base() {
+    public RectangularPackingItem()
+      : base() {
     }
 
     public RectangularPackingItem(int width, int height, RectangularPackingBin targetBin) : base(width, height) { this.TargetBin = new RectangularPackingBin(targetBin.Width, targetBin.Height); }
-                                 
+
     public void AddTargetBinMeasures(int[] targetBinMeasures) {
       TargetBin = new RectangularPackingBin(targetBinMeasures[0], targetBinMeasures[1]);
Index: branches/HeuristicLab.BinPacking/HeuristicLab.Problems.BinPacking/3.3/Plugin.cs.frame
===================================================================
--- branches/HeuristicLab.BinPacking/HeuristicLab.Problems.BinPacking/3.3/Plugin.cs.frame	(revision 13460)
+++ branches/HeuristicLab.BinPacking/HeuristicLab.Problems.BinPacking/3.3/Plugin.cs.frame	(revision 13461)
@@ -29,7 +29,14 @@
   [PluginFile("HeuristicLab.Problems.BinPacking-3.3.dll", PluginFileType.Assembly)]
   [PluginDependency("HeuristicLab.Common", "3.3")]
-  [PluginDependency("HeuristicLab.Common.Resources", "3.3")]
   [PluginDependency("HeuristicLab.Core", "3.3")]
+  [PluginDependency("HeuristicLab.Data", "3.3")]
+  [PluginDependency("HeuristicLab.Encodings.IntegerVectorEncoding", "3.3")]
+  [PluginDependency("HeuristicLab.Collections", "3.3")]
+  [PluginDependency("HeuristicLab.Encodings.PermutationEncoding", "3.3")]
+  [PluginDependency("HeuristicLab.Optimization", "3.3")]
+  [PluginDependency("HeuristicLab.Optimization.Operators", "3.3")]
+  [PluginDependency("HeuristicLab.Parameters", "3.3")]
   [PluginDependency("HeuristicLab.Persistence", "3.3")]
+  [PluginDependency("HeuristicLab.Problems.Instances", "3.3")]
   public class HeuristicLabProblemsBinPackingPlugin : PluginBase {
   }
Index: branches/HeuristicLab.BinPacking/HeuristicLab.Problems.BinPacking/3.3/Problem/RegularIdenticalBinPackingProblem.cs
===================================================================
--- branches/HeuristicLab.BinPacking/HeuristicLab.Problems.BinPacking/3.3/Problem/RegularIdenticalBinPackingProblem.cs	(revision 13460)
+++ branches/HeuristicLab.BinPacking/HeuristicLab.Problems.BinPacking/3.3/Problem/RegularIdenticalBinPackingProblem.cs	(revision 13461)
@@ -47,9 +47,9 @@
 
     #region Parameter Properties
-    public ValueParameter<B> PackingBinMeasuresParameter {
-      get { return (ValueParameter<B>)Parameters["PackingBinMeasures"]; }
-    }
-    public ConstrainedValueParameter<IPackingSolutionDecoder> PackingSolutionDecoderParameter {
-      get { return (ConstrainedValueParameter<IPackingSolutionDecoder>)Parameters["PackingSolutionDecoder"]; }
+    public IValueParameter<B> PackingBinMeasuresParameter {
+      get { return (IValueParameter<B>)Parameters["PackingBinMeasures"]; }
+    }
+    public IConstrainedValueParameter<IPackingSolutionDecoder> PackingSolutionDecoderParameter {
+      get { return (IConstrainedValueParameter<IPackingSolutionDecoder>)Parameters["PackingSolutionDecoder"]; }
     }
     #endregion
Index: branches/HeuristicLab.BinPacking/HeuristicLab.Problems.BinPacking/3.3/Shapes/CuboidPackingShape.cs
===================================================================
--- branches/HeuristicLab.BinPacking/HeuristicLab.Problems.BinPacking/3.3/Shapes/CuboidPackingShape.cs	(revision 13460)
+++ branches/HeuristicLab.BinPacking/HeuristicLab.Problems.BinPacking/3.3/Shapes/CuboidPackingShape.cs	(revision 13461)
@@ -31,5 +31,5 @@
   [StorableClass]
   public abstract class CuboidPackingShape : PackingShape<ThreeDimensionalPacking>, IRegularPackingShape, IComparable<CuboidPackingShape> {
-    #region Properties 
+    #region Properties
     /// <summary>
     /// Describes the size on the X-axis
@@ -62,9 +62,9 @@
     }
     public override bool Encloses(ThreeDimensionalPacking checkedPosition, PackingShape<ThreeDimensionalPacking> checkedShape) {
-      return Encloses(checkedPosition, (CuboidPackingShape) checkedShape);
+      return Encloses(checkedPosition, (CuboidPackingShape)checkedShape);
     }
     private bool Encloses(ThreeDimensionalPacking checkedPosition, CuboidPackingShape checkedShape) {
       return Encloses(new CuboidDiagonal(this), new CuboidDiagonal(checkedPosition, checkedShape));
-    }  
+    }
     private bool Encloses(CuboidDiagonal c1, CuboidDiagonal c2) {
       return (c1.x1 <= c2.x1 &&
@@ -84,5 +84,5 @@
     private bool Overlaps(CuboidDiagonal c1, CuboidDiagonal c2) {
       return !(c1.x1 > c2.x2 ||
-               c1.y1 > c2.y2 ||  
+               c1.y1 > c2.y2 ||
                c1.z1 > c2.z2 ||
                c1.x2 < c2.x1 ||
@@ -98,7 +98,8 @@
       }
     }
-    #endregion        
+    #endregion
 
-    public CuboidPackingShape(int width, int height, int depth) : base () {
+    protected CuboidPackingShape(int width, int height, int depth)
+      : base() {
       this.Width = width;
       this.Height = height;
@@ -108,5 +109,5 @@
     public override void InitializeFromMeasures(int[] measures) {
       if (measures.Length != 3)
-        throw new InvalidOperationException("Nr of measures does not fit shape-dimension.");        
+        throw new InvalidOperationException("Nr of measures does not fit shape-dimension.");
       this.Width = measures[0];
       this.Height = measures[1];
@@ -125,5 +126,6 @@
       this.Depth = original.Depth;
     }
-    public CuboidPackingShape() : base(){ }
+
+    protected CuboidPackingShape() : base() { }
 
     public override string ToString() {
@@ -136,26 +138,20 @@
       //Using "Clustered-Area-Height"-comparison as descr
 
-      int result = (this.Width * this.Depth).CompareTo (other.Width * other.Depth);
-	  
-	  if (result == 0)
-		result = this.MultipliedMeasures.CompareTo(other.MultipliedMeasures);
-      //if (result == 0) {
-      //  result = this.Depth.CompareTo(other.Depth) + this.Width.CompareTo(other.Width);
-      //  if (result == 0) {        
-      //    result = this.Width.CompareTo(other.Width);
-	  if (result == 0)               
-		result = this.Height.CompareTo(other.Height);
-      //  }
-      //}
+      int result = (this.Width * this.Depth).CompareTo(other.Width * other.Depth);
+
+      if (result == 0)
+        result = this.MultipliedMeasures.CompareTo(other.MultipliedMeasures);
+      if (result == 0)
+        result = this.Height.CompareTo(other.Height);
       return result;
-    }        
+    }
 
     public int CompareTo(object obj) {
-      if (obj.GetType().Equals(this.GetType()))
+      if (obj.GetType() == this.GetType())
         return this.CompareTo((CuboidPackingShape)obj);
       else return 0;
     }
 
-    #endregion 
+    #endregion
 
     private struct CuboidDiagonal {
Index: branches/HeuristicLab.BinPacking/HeuristicLab.Problems.BinPacking/3.3/Shapes/PackingShape.cs
===================================================================
--- branches/HeuristicLab.BinPacking/HeuristicLab.Problems.BinPacking/3.3/Shapes/PackingShape.cs	(revision 13460)
+++ branches/HeuristicLab.BinPacking/HeuristicLab.Problems.BinPacking/3.3/Shapes/PackingShape.cs	(revision 13461)
@@ -30,7 +30,6 @@
   [Item("PackingShape", "Represents an abstract shape to describe the measures and the positioning of objects related to bin-packing problems.")]
   [StorableClass]
-  public abstract class PackingShape<D> : NamedItem, IPackingShape
-    where D: class, IPackingDimensions
-  {
+  public abstract class PackingShape<D> : Item, IPackingShape
+    where D : class, IPackingDimensions {
     public static Type PositionType {
       get { return typeof(D); }
@@ -45,10 +44,9 @@
     public abstract D Origin { get; }
 
-    public PackingShape(int[] measures) {
+    protected PackingShape(int[] measures) {
       InitializeFromMeasures(measures);
     }
-    public PackingShape() {
 
-    }
+    protected PackingShape() { }
 
 
