diff --git a/VECTOAux/VectoAuxiliaries/AdvancedAuxiliaries.vb b/VECTOAux/VectoAuxiliaries/AdvancedAuxiliaries.vb
index d63afd32875b2e4939d6a00f602eaf588098c983..95b2442c5cfd569da918fc9d6ace3f08c2ffe95f 100644
--- a/VECTOAux/VectoAuxiliaries/AdvancedAuxiliaries.vb
+++ b/VECTOAux/VectoAuxiliaries/AdvancedAuxiliaries.vb
@@ -18,14 +18,13 @@ Imports VectoAuxiliaries.DownstreamModules
 Imports System.Windows.Forms
 Imports TUGraz.VectoCommon.Utils
 
+<Assembly: InternalsVisibleTo("VectoCore")> 
 
 ''' <summary>
 ''' Main entry point for the advanced auxiliary module. 
 ''' This class represents slide number 17 titled Calculations of Cycle FC accounting for Smart Auxiliaries.
 ''' </summary>
 ''' <remarks></remarks>
-<Assembly: InternalsVisibleTo("VectoCore")> 
-
 Public Class AdvancedAuxiliaries
 	Implements IAdvancedAuxiliaries
 
diff --git a/VECTOAux/VectoAuxiliaries/DownstreamModules/M10.vb b/VECTOAux/VectoAuxiliaries/DownstreamModules/M10.vb
index 1eb3be4564cbd8e64dbd2a6d47e03784f6623c49..9dbfca19b46d104e13f8dc37a3d3aa047ca57e76 100644
--- a/VECTOAux/VectoAuxiliaries/DownstreamModules/M10.vb
+++ b/VECTOAux/VectoAuxiliaries/DownstreamModules/M10.vb
@@ -10,11 +10,7 @@
 ' See the LICENSE.txt for the specific language governing permissions and limitations.
 
 Imports TUGraz.VectoCommon.Utils
-Imports TUGraz.VectoCore.Utils
-Imports VectoAuxiliaries.Electrics
 Imports VectoAuxiliaries.Pneumatics
-Imports VectoAuxiliaries.Hvac
-Imports VectoAuxiliaries.DownstreamModules
 
 Namespace DownstreamModules
 	Public Class M10
diff --git a/VectoCore/VectoCore/Models/Simulation/Data/AuxiliaryDemandType.cs b/VectoCommon/VectoCommon/Models/AuxiliaryDemandType.cs
similarity index 96%
rename from VectoCore/VectoCore/Models/Simulation/Data/AuxiliaryDemandType.cs
rename to VectoCommon/VectoCommon/Models/AuxiliaryDemandType.cs
index 9a54347de0ecce6f5492c925bcb706e5684fd59f..178755547f98656f9f7e935d7dffe6dd8efd825e 100644
--- a/VectoCore/VectoCore/Models/Simulation/Data/AuxiliaryDemandType.cs
+++ b/VectoCommon/VectoCommon/Models/AuxiliaryDemandType.cs
@@ -29,7 +29,7 @@
 *   Martin Rexeis, rexeis@ivt.tugraz.at, IVT, Graz University of Technology
 */
 
-namespace TUGraz.VectoCore.Models.Simulation.Data
+namespace TUGraz.VectoCommon.Models
 {
 	public enum AuxiliaryDemandType
 	{
diff --git a/VectoCommon/VectoCommon/Utils/EnumHelper.cs b/VectoCommon/VectoCommon/Utils/EnumHelper.cs
index 51dd4b8ae512393b314e9472a0f933b353882610..ae34734bb61c823079c577cc6854f99e8c631a4a 100644
--- a/VectoCommon/VectoCommon/Utils/EnumHelper.cs
+++ b/VectoCommon/VectoCommon/Utils/EnumHelper.cs
@@ -33,6 +33,7 @@ using System;
 using System.Collections.Generic;
 using System.Linq;
 using System.Runtime.CompilerServices;
+using System.Text.RegularExpressions;
 
 namespace TUGraz.VectoCommon.Utils
 {
@@ -40,7 +41,7 @@ namespace TUGraz.VectoCommon.Utils
 	{
 		public static T ParseEnum<T>(this string s, bool ignoreCase = true)
 		{
-			return (T)Enum.Parse(typeof(T), s.RemoveWhitespace(), ignoreCase);
+			return (T)Enum.Parse(typeof(T), Regex.Replace(s, @"\s+", ""), ignoreCase);
 		}
 
 		public static IEnumerable<T> GetValues<T>()
diff --git a/VectoCommon/VectoCommon/Utils/VectoMath.cs b/VectoCommon/VectoCommon/Utils/VectoMath.cs
index ce8a82f79b924cba6fcd01ff4b3e7a5bc146fcdb..d7422f0806f899f5030573d655e420a217e3ccc6 100644
--- a/VectoCommon/VectoCommon/Utils/VectoMath.cs
+++ b/VectoCommon/VectoCommon/Utils/VectoMath.cs
@@ -35,9 +35,8 @@ using System.Diagnostics;
 using System.Linq;
 using TUGraz.VectoCommon.Exceptions;
 using TUGraz.VectoCommon.Models;
-using TUGraz.VectoCommon.Utils;
 
-namespace TUGraz.VectoCore.Utils
+namespace TUGraz.VectoCommon.Utils
 {
 	/// <summary>
 	/// Provides helper methods for mathematical functions.
diff --git a/VectoCommon/VectoCommon/VectoCommon.csproj b/VectoCommon/VectoCommon/VectoCommon.csproj
index f5af0adb6fb585a46a68a2b988b88da43e3c73e8..5d71c4763c111e024af5750b8680cc53d20a8b1a 100644
--- a/VectoCommon/VectoCommon/VectoCommon.csproj
+++ b/VectoCommon/VectoCommon/VectoCommon.csproj
@@ -50,6 +50,7 @@
     <Compile Include="InputData\EngineeringInputData.cs" />
     <Compile Include="InputData\IInputDataProvider.cs" />
     <Compile Include="InputData\IntegrityStatus.cs" />
+    <Compile Include="Models\AuxiliaryDemandType.cs" />
     <Compile Include="Models\AuxiliaryModel.cs" />
     <Compile Include="Models\AxleConfiguration.cs" />
     <Compile Include="Models\CrossWindCorrectionMode.cs" />
diff --git a/VectoCore/VectoCore/InputData/FileIO/JSON/JSONInputData.cs b/VectoCore/VectoCore/InputData/FileIO/JSON/JSONInputData.cs
index 1891e8b274546b624ecce8ab8acb7baef0b4b005..ba8e070e11be09aa3bd5c2001501c9cde237ab5d 100644
--- a/VectoCore/VectoCore/InputData/FileIO/JSON/JSONInputData.cs
+++ b/VectoCore/VectoCore/InputData/FileIO/JSON/JSONInputData.cs
@@ -529,7 +529,7 @@ namespace TUGraz.VectoCore.InputData.FileIO.JSON
 				var auxData = new AuxiliaryDataInputData {
 					ID = aux.GetEx<string>("ID"),
 					Type = aux.GetEx<string>("Type"),
-					Technology = aux.GetEx<string>("Technology")
+					Technology = aux.GetEx<string>("Technology"),
 				};
 				if (aux["TechList"] != null) {
 					auxData.TechList = aux["TechList"].Select(x => x.ToString()).ToList(); //  .Select(x => x.ToString).ToArray();
diff --git a/VectoCore/VectoCore/InputData/Reader/FullLoadCurveReader.cs b/VectoCore/VectoCore/InputData/Reader/FullLoadCurveReader.cs
index 5251974221c8d7a203a2d588c52d8800e2c38f77..9eb37c7934be5e3cde817029bd55406df3e624ee 100644
--- a/VectoCore/VectoCore/InputData/Reader/FullLoadCurveReader.cs
+++ b/VectoCore/VectoCore/InputData/Reader/FullLoadCurveReader.cs
@@ -89,7 +89,11 @@ namespace TUGraz.VectoCore.InputData.Reader
 			if (declarationMode) {
 				tmp = new PT1();
 			} else {
-				tmp = PT1Curve.Create(data);
+				if (data.Columns.Count > 3) {
+					tmp = PT1Curve.Create(data);
+				} else {
+					tmp = new PT1();
+				}
 			}
 			entriesFld.Sort((entry1, entry2) => entry1.EngineSpeed.Value().CompareTo(entry2.EngineSpeed.Value()));
 			return new FullLoadCurve { FullLoadEntries = entriesFld, PT1Data = tmp };
@@ -123,7 +127,7 @@ namespace TUGraz.VectoCore.InputData.Reader
 		}
 
 
-		private static class Fields
+		public static class Fields
 		{
 			/// <summary>
 			/// [rpm] engine speed
diff --git a/VectoCore/VectoCore/InputData/Reader/Impl/EngineOnlyVectoRunDataFactory.cs b/VectoCore/VectoCore/InputData/Reader/Impl/EngineOnlyVectoRunDataFactory.cs
index 1ef3792d93d24bcc4b05ad63bb9045a67b575eeb..a33c821ca18ce2881f2495b54bf9d42fe88ba017 100644
--- a/VectoCore/VectoCore/InputData/Reader/Impl/EngineOnlyVectoRunDataFactory.cs
+++ b/VectoCore/VectoCore/InputData/Reader/Impl/EngineOnlyVectoRunDataFactory.cs
@@ -33,6 +33,7 @@ using System.Collections.Generic;
 using TUGraz.VectoCommon.InputData;
 using TUGraz.VectoCommon.Models;
 using TUGraz.VectoCore.InputData.Reader.DataObjectAdaper;
+using TUGraz.VectoCore.InputData.Reader.DataObjectAdapter;
 using TUGraz.VectoCore.Models.Simulation.Data;
 using TUGraz.VectoCore.Models.SimulationComponent.Data;
 
diff --git a/VectoCore/VectoCore/InputData/Reader/Impl/EngineeringModeVectoRunDataFactory.cs b/VectoCore/VectoCore/InputData/Reader/Impl/EngineeringModeVectoRunDataFactory.cs
index 5471403d36acfc9981808ac49be9844f0d10c61c..cc056183149281d19c53fbcb26861567abc02abf 100644
--- a/VectoCore/VectoCore/InputData/Reader/Impl/EngineeringModeVectoRunDataFactory.cs
+++ b/VectoCore/VectoCore/InputData/Reader/Impl/EngineeringModeVectoRunDataFactory.cs
@@ -35,6 +35,7 @@ using System.Runtime.CompilerServices;
 using TUGraz.VectoCommon.InputData;
 using TUGraz.VectoCommon.Models;
 using TUGraz.VectoCore.InputData.Reader.DataObjectAdaper;
+using TUGraz.VectoCore.InputData.Reader.DataObjectAdapter;
 using TUGraz.VectoCore.Models.Simulation.Data;
 using DriverData = TUGraz.VectoCore.Models.SimulationComponent.Data.DriverData;
 
diff --git a/VectoCore/VectoCore/Models/Declaration/Axle.cs b/VectoCore/VectoCore/Models/Declaration/Axle.cs
index 9b686af4221da6689f18efee93764db531dcf653..c902939bb1e7442e90a6ac5542692ebd0d3a6ea8 100644
--- a/VectoCore/VectoCore/Models/Declaration/Axle.cs
+++ b/VectoCore/VectoCore/Models/Declaration/Axle.cs
@@ -29,6 +29,7 @@
 *   Martin Rexeis, rexeis@ivt.tugraz.at, IVT, Graz University of Technology
 */
 
+using System;
 using System.ComponentModel.DataAnnotations;
 using TUGraz.VectoCommon.Models;
 using TUGraz.VectoCommon.Utils;
@@ -49,7 +50,7 @@ namespace TUGraz.VectoCore.Models.Declaration
 		[Required, SIRange(500, 100000)]
 		public Newton TyreTestLoad { get; internal set; }
 
-		[Required, SIRange(0, 1)]
+		[Required, SIRange(Double.MinValue, 1)]
 		public double AxleWeightShare { get; internal set; }
 
 		public bool TwinTyres { get; internal set; }
diff --git a/VectoCore/VectoCore/Models/Declaration/DeclarationData.cs b/VectoCore/VectoCore/Models/Declaration/DeclarationData.cs
index 4004ee086e8f8bfa2fcef8a671796fff51383722..d0e4c82767c14d97e0d2a3fb1e76805e76fd4f4d 100644
--- a/VectoCore/VectoCore/Models/Declaration/DeclarationData.cs
+++ b/VectoCore/VectoCore/Models/Declaration/DeclarationData.cs
@@ -43,7 +43,7 @@ using TUGraz.VectoCore.Utils;
 
 namespace TUGraz.VectoCore.Models.Declaration
 {
-	internal class DeclarationData
+	public sealed class DeclarationData
 	{
 		private static DeclarationData _instance;
 		private Segments _segments;
diff --git a/VectoCore/VectoCore/Models/Declaration/LACDecisionFactor.cs b/VectoCore/VectoCore/Models/Declaration/LACDecisionFactor.cs
index e8de0c3b8d096b91c3e3a8ab805fab374b184a4c..355a2d79956868017505d2c63f8619ed24e36059 100644
--- a/VectoCore/VectoCore/Models/Declaration/LACDecisionFactor.cs
+++ b/VectoCore/VectoCore/Models/Declaration/LACDecisionFactor.cs
@@ -59,7 +59,7 @@ namespace TUGraz.VectoCore.Models.Declaration
 		/// <summary>
 		/// Class for Look Ahead Coasting Decision Factor (DF_coast)
 		/// </summary>
-		private sealed class DecisionFactor : LookupData<MeterPerSecond, MeterPerSecond, double>
+		public sealed class DecisionFactor : LookupData<MeterPerSecond, MeterPerSecond, double>
 		{
 			private readonly LACDecisionFactorVTarget _vTarget;
 			private readonly LACDecisionFactorVdrop _vDrop;
@@ -89,91 +89,106 @@ namespace TUGraz.VectoCore.Models.Declaration
 				return _offset - _scaling * _vTarget.Lookup(targetVelocity) * _vDrop.Lookup(velocityDrop);
 			}
 
+
 			protected override void ParseData(DataTable table) {}
+		}
+
+		public sealed class LACDecisionFactorVdrop : LookupData<MeterPerSecond, double>
+		{
+			private const string ResourceId = "TUGraz.VectoCore.Resources.Declaration.LAC-DF-Vdrop.csv";
 
-			private sealed class LACDecisionFactorVdrop : LookupData<MeterPerSecond, double>
+			public LACDecisionFactorVdrop()
 			{
-				private const string ResourceId = "TUGraz.VectoCore.Resources.Declaration.LAC-DF-Vdrop.csv";
+				ParseData(ReadCsvResource(ResourceId));
+			}
 
-				public LACDecisionFactorVdrop()
-				{
-					ParseData(ReadCsvResource(ResourceId));
-				}
+			public LACDecisionFactorVdrop(DataTable vDrop)
+			{
+				ParseData(vDrop ?? ReadCsvResource(ResourceId));
+			}
 
-				public LACDecisionFactorVdrop(DataTable vDrop)
-				{
-					ParseData(vDrop ?? ReadCsvResource(ResourceId));
+			public override double Lookup(MeterPerSecond targetVelocity)
+			{
+				var section = Data.GetSection(kv => kv.Key < targetVelocity);
+				return VectoMath.Interpolate(section.Item1.Key, section.Item2.Key, section.Item1.Value, section.Item2.Value,
+					targetVelocity);
+			}
+
+			protected override void ParseData(DataTable table)
+			{
+				if (table.Columns.Count < 2) {
+					throw new VectoException("LAC Decision Factor File for Vdrop must consist of at least 2 columns.");
 				}
 
-				public override double Lookup(MeterPerSecond targetVelocity)
-				{
-					var section = Data.GetSection(kv => kv.Key < targetVelocity);
-					return VectoMath.Interpolate(section.Item1.Key, section.Item2.Key, section.Item1.Value, section.Item2.Value,
-						targetVelocity);
+				if (table.Rows.Count < 2) {
+					throw new VectoException(
+						"LAC Decision Factor File for Vdrop must consist of at least two lines with numeric values (below file header)");
 				}
 
-				protected override void ParseData(DataTable table)
-				{
-					if (table.Columns.Count < 2) {
-						throw new VectoException("LAC Decision Factor File for Vdrop must consist of at least 2 columns.");
-					}
-
-					if (table.Rows.Count < 2) {
-						throw new VectoException(
-							"LAC Decision Factor File for Vdrop must consist of at least two lines with numeric values (below file header)");
-					}
-
-					if (table.Columns.Contains("v_target") && table.Columns.Contains("decision_factor")) {
-						Data = table.Rows.Cast<DataRow>()
-							.ToDictionary(r => r.ParseDouble("v_drop").KMPHtoMeterPerSecond(), r => r.ParseDouble("decision_factor"));
-					} else {
-						Data = table.Rows.Cast<DataRow>()
-							.ToDictionary(r => r.ParseDouble(0).KMPHtoMeterPerSecond(), r => r.ParseDouble(1));
-					}
+				if (table.Columns.Contains(Fields.VelocityDrop) && table.Columns.Contains(Fields.DecisionFactor)) {
+					Data = table.Rows.Cast<DataRow>()
+						.ToDictionary(r => r.ParseDouble(Fields.VelocityDrop).KMPHtoMeterPerSecond(),
+							r => r.ParseDouble(Fields.DecisionFactor));
+				} else {
+					Data = table.Rows.Cast<DataRow>()
+						.ToDictionary(r => r.ParseDouble(0).KMPHtoMeterPerSecond(), r => r.ParseDouble(1));
 				}
 			}
 
-			private sealed class LACDecisionFactorVTarget : LookupData<MeterPerSecond, double>
+			public static class Fields
 			{
-				private const string ResourceId = "TUGraz.VectoCore.Resources.Declaration.LAC-DF-Vtarget.csv";
+				public const string VelocityDrop = "v_drop";
+				public const string DecisionFactor = "decision_factor";
+			}
+		}
 
-				public LACDecisionFactorVTarget()
-				{
-					ParseData(ReadCsvResource(ResourceId));
-				}
+		public sealed class LACDecisionFactorVTarget : LookupData<MeterPerSecond, double>
+		{
+			private const string ResourceId = "TUGraz.VectoCore.Resources.Declaration.LAC-DF-Vtarget.csv";
+
+			public LACDecisionFactorVTarget()
+			{
+				ParseData(ReadCsvResource(ResourceId));
+			}
+
+			public LACDecisionFactorVTarget(DataTable vTargetLookup)
+			{
+				ParseData(vTargetLookup ?? ReadCsvResource(ResourceId));
+			}
 
-				public LACDecisionFactorVTarget(DataTable vTargetLookup)
-				{
-					ParseData(vTargetLookup ?? ReadCsvResource(ResourceId));
+			public override double Lookup(MeterPerSecond targetVelocity)
+			{
+				var section = Data.GetSection(kv => kv.Key < targetVelocity);
+				return VectoMath.Interpolate(section.Item1.Key, section.Item2.Key, section.Item1.Value, section.Item2.Value,
+					targetVelocity);
+			}
+
+			protected override void ParseData(DataTable table)
+			{
+				if (table.Columns.Count < 2) {
+					throw new VectoException("LAC Decision Factor File for Vtarget must consist of at least 2 columns.");
 				}
 
-				public override double Lookup(MeterPerSecond targetVelocity)
-				{
-					var section = Data.GetSection(kv => kv.Key < targetVelocity);
-					return VectoMath.Interpolate(section.Item1.Key, section.Item2.Key, section.Item1.Value, section.Item2.Value,
-						targetVelocity);
+				if (table.Rows.Count < 2) {
+					throw new VectoException(
+						"LAC Decision Factor File for Vtarget must consist of at least two lines with numeric values (below file header)");
 				}
 
-				protected override void ParseData(DataTable table)
-				{
-					if (table.Columns.Count < 2) {
-						throw new VectoException("LAC Decision Factor File for Vtarget must consist of at least 2 columns.");
-					}
-
-					if (table.Rows.Count < 2) {
-						throw new VectoException(
-							"LAC Decision Factor File for Vtarget must consist of at least two lines with numeric values (below file header)");
-					}
-
-					if (table.Columns.Contains("v_target") && table.Columns.Contains("decision_factor")) {
-						Data = table.Rows.Cast<DataRow>()
-							.ToDictionary(r => r.ParseDouble("v_target").KMPHtoMeterPerSecond(), r => r.ParseDouble("decision_factor"));
-					} else {
-						Data = table.Rows.Cast<DataRow>()
-							.ToDictionary(r => r.ParseDouble(0).KMPHtoMeterPerSecond(), r => r.ParseDouble(1));
-					}
+				if (table.Columns.Contains(Fields.TargetVelocity) && table.Columns.Contains(Fields.DecisionFactor)) {
+					Data = table.Rows.Cast<DataRow>()
+						.ToDictionary(r => r.ParseDouble(Fields.TargetVelocity).KMPHtoMeterPerSecond(),
+							r => r.ParseDouble(Fields.DecisionFactor));
+				} else {
+					Data = table.Rows.Cast<DataRow>()
+						.ToDictionary(r => r.ParseDouble(0).KMPHtoMeterPerSecond(), r => r.ParseDouble(1));
 				}
 			}
+
+			public static class Fields
+			{
+				public const string TargetVelocity = "v_target";
+				public const string DecisionFactor = "decision_factor";
+			}
 		}
 	}
 }
\ No newline at end of file
diff --git a/VectoCore/VectoCore/Models/Declaration/Payloads.cs b/VectoCore/VectoCore/Models/Declaration/Payloads.cs
index e78819a7122496c9b0adee0db836583e285a8015..8e0e7a447baacb72adcb4dc885d3139138e98140 100644
--- a/VectoCore/VectoCore/Models/Declaration/Payloads.cs
+++ b/VectoCore/VectoCore/Models/Declaration/Payloads.cs
@@ -6,9 +6,9 @@ using TUGraz.VectoCore.Utils;
 
 namespace TUGraz.VectoCore.Models.Declaration
 {
-	internal sealed class Payloads : LookupData<Kilogram, Payloads.PayloadEntry>
+	public sealed class Payloads : LookupData<Kilogram, Payloads.PayloadEntry>
 	{
-		internal sealed class PayloadEntry
+		public sealed class PayloadEntry
 		{
 			public Kilogram Payload50Percent;
 			public Kilogram Payload75Percent;
diff --git a/VectoCore/VectoCore/Models/Declaration/StandardWeights.cs b/VectoCore/VectoCore/Models/Declaration/StandardWeights.cs
index 44e0c5212450efd4ff5edb18ea8753147f0c2330..014d00dcd52bf67ec8844fa5c2f470d6f470bc2a 100644
--- a/VectoCore/VectoCore/Models/Declaration/StandardWeights.cs
+++ b/VectoCore/VectoCore/Models/Declaration/StandardWeights.cs
@@ -39,7 +39,7 @@ using TUGraz.VectoCore.Utils;
 
 namespace TUGraz.VectoCore.Models.Declaration
 {
-	internal sealed class StandardWeight
+	public sealed class StandardWeight
 	{
 		public Kilogram CurbWeight;
 		public Kilogram GrossVehicleWeight;
@@ -68,7 +68,7 @@ namespace TUGraz.VectoCore.Models.Declaration
 	///		Gross Vehicle Weight (=Maximum Allowed Weight), and 
 	///		MaxPayload.
 	/// </summary>
-	internal sealed class StandardWeights : LookupData<string, StandardWeight>
+	public sealed class StandardWeights : LookupData<string, StandardWeight>
 	{
 		private const string ResourceId = "TUGraz.VectoCore.Resources.Declaration.Body_Trailers_Weights.csv";
 
diff --git a/VectoCore/VectoCore/Models/SimulationComponent/Data/AccelerationCurve.cs b/VectoCore/VectoCore/Models/SimulationComponent/Data/AccelerationCurve.cs
index ca50bfcc175310f6e103eaf632d85a4780d8f4da..9ed34ad998a502dd00e56bc8278b2c03f909f368 100644
--- a/VectoCore/VectoCore/Models/SimulationComponent/Data/AccelerationCurve.cs
+++ b/VectoCore/VectoCore/Models/SimulationComponent/Data/AccelerationCurve.cs
@@ -235,7 +235,7 @@ namespace TUGraz.VectoCore.Models.SimulationComponent.Data
 			return m / k * Math.Exp((k * t).Value()) + b * t + c;
 		}
 
-		private static class Fields
+		public static class Fields
 		{
 			public const string Velocity = "v";
 
diff --git a/VectoCore/VectoCore/Models/SimulationComponent/Data/CrossWindCorrectionCurveReader.cs b/VectoCore/VectoCore/Models/SimulationComponent/Data/CrossWindCorrectionCurveReader.cs
index 8b401ad19e6b91a5c09c96b0b9c82265228f8064..d9ec305f2ce260a2315ad8be26d1a8eeff02934d 100644
--- a/VectoCore/VectoCore/Models/SimulationComponent/Data/CrossWindCorrectionCurveReader.cs
+++ b/VectoCore/VectoCore/Models/SimulationComponent/Data/CrossWindCorrectionCurveReader.cs
@@ -161,7 +161,7 @@ namespace TUGraz.VectoCore.Models.SimulationComponent.Data
 			return columns.Contains(FieldsCdxABeta.Beta) && columns.Contains(FieldsCdxABeta.DeltaCdxA);
 		}
 
-		private static class FieldsCdxABeta
+		public static class FieldsCdxABeta
 		{
 			public const string Beta = "beta";
 
diff --git a/VectoCore/VectoCore/Models/SimulationComponent/Data/Engine/FuelConsumptionMap.cs b/VectoCore/VectoCore/Models/SimulationComponent/Data/Engine/FuelConsumptionMap.cs
index 783d16f4d6db94084bcf7eeac91784c282ce1d85..4a88139444d80ace93702f26587238b3edb02864 100644
--- a/VectoCore/VectoCore/Models/SimulationComponent/Data/Engine/FuelConsumptionMap.cs
+++ b/VectoCore/VectoCore/Models/SimulationComponent/Data/Engine/FuelConsumptionMap.cs
@@ -122,18 +122,20 @@ namespace TUGraz.VectoCore.Models.SimulationComponent.Data.Engine
 		{
 			// delaunay map needs is initialised with rpm, therefore the angularVelocity has to be converted.
 			var value = _fuelMap.Interpolate(torque.Value(), angularVelocity.AsRPM);
-			if (value.HasValue)
+			if (value.HasValue) {
 				return value.Value.SI().Kilo.Gramm.Per.Second.Cast<KilogramPerSecond>();
+			}
 
-			if (allowExtrapolation)
+			if (allowExtrapolation) {
 				return
 					_fuelMap.Extrapolate(torque.Value(), angularVelocity.AsRPM).SI().Kilo.Gramm.Per.Second.Cast<KilogramPerSecond>();
+			}
 
 			throw new VectoException("FuelConsumptionMap: Interpolation failed. torque: {0}, n: {1}", torque.Value(),
 				angularVelocity.AsRPM);
 		}
 
-		private static class Fields
+		public static class Fields
 		{
 			/// <summary>
 			/// [rpm]
diff --git a/VectoCore/VectoCore/Models/SimulationComponent/Data/Engine/PT1Curve.cs b/VectoCore/VectoCore/Models/SimulationComponent/Data/Engine/PT1Curve.cs
index 32d9b6f27bd29aa2200e31a4d881b134a5dd3f5a..3a8434e773ba8023eae91b3c8697c6466e610f53 100644
--- a/VectoCore/VectoCore/Models/SimulationComponent/Data/Engine/PT1Curve.cs
+++ b/VectoCore/VectoCore/Models/SimulationComponent/Data/Engine/PT1Curve.cs
@@ -74,7 +74,7 @@ namespace TUGraz.VectoCore.Models.SimulationComponent.Data.Engine
 
 		protected override void ParseData(DataTable data)
 		{
-			if (data.Columns.Count < 4) {
+			if (data.Columns.Count < 3) {
 				throw new VectoException("FullLoadCurve/PT1 Data File must consist of at least 4 columns.");
 			}
 
diff --git a/VectoCore/VectoCore/Models/SimulationComponent/Data/RetarderLossMap.cs b/VectoCore/VectoCore/Models/SimulationComponent/Data/RetarderLossMap.cs
index fc8b6904e839e0637f723addc14f50918eab5f57..9aed81a97d3f5c78e45838f00a7f3e654cb8a3a0 100644
--- a/VectoCore/VectoCore/Models/SimulationComponent/Data/RetarderLossMap.cs
+++ b/VectoCore/VectoCore/Models/SimulationComponent/Data/RetarderLossMap.cs
@@ -153,7 +153,7 @@ namespace TUGraz.VectoCore.Models.SimulationComponent.Data
 			public NewtonMeter TorqueLoss { get; set; }
 		}
 
-		private static class Fields
+		public static class Fields
 		{
 			/// <summary>
 			///     [rpm]
diff --git a/VectoCore/VectoCore/OutputData/SummaryDataContainer.cs b/VectoCore/VectoCore/OutputData/SummaryDataContainer.cs
index 39830a4f407803e5bd678d278c1d6c4de4e44a88..a74972dec2f5336fe48f93740daf655b54369d62 100644
--- a/VectoCore/VectoCore/OutputData/SummaryDataContainer.cs
+++ b/VectoCore/VectoCore/OutputData/SummaryDataContainer.cs
@@ -46,61 +46,61 @@ namespace TUGraz.VectoCore.OutputData
 	public class SummaryDataContainer : LoggingObject, IDisposable
 	{
 		// ReSharper disable InconsistentNaming
-		private const string JOB = "Job [-]";
-		private const string INPUTFILE = "Input File [-]";
-		private const string CYCLE = "Cycle [-]";
-		private const string STATUS = "Status";
-		private const string MASS = "Mass [kg]";
-		private const string LOADING = "Loading [kg]";
-		private const string TIME = "time [s]";
-		private const string DISTANCE = "distance [km]";
-		private const string SPEED = "speed [km/h]";
-		private const string ALTITUDE_DELTA = "altitudeDelta [m]";
-
-		private const string FCMAP_H = "FC-Map [g/h]";
-		private const string FCMAP_KM = "FC-Map [g/km]";
-		private const string FCAUXC_H = "FC-AUXc [g/h]";
-		private const string FCAUXC_KM = "FC-AUXc [g/km]";
-		private const string FCWHTCC_H = "FC-WHTCc [g/h]";
-		private const string FCWHTCC_KM = "FC-WHTCc [g/km]";
-		private const string FCAAUX_H = "FC-AAUX [g/h]";
-		private const string FCAAUX_KM = "FC-AAUX [g/km]";
-
-		private const string FCFINAL_H = "FC-Final [g/h]";
-		private const string FCFINAL_KM = "FC-Final [g/km]";
-		private const string FCFINAL_LITERPER100KM = "FC-Final [l/100km]";
-		private const string FCFINAL_LITERPER100TKM = "FC-Final [l/100tkm]";
-
-		private const string CO2_KM = "CO2 [g/km]";
-		private const string CO2_TKM = "CO2 [g/tkm]";
-
-		private const string P_WHEEL_POS = "P_wheel_in_pos [kW]";
-		private const string P_BRAKE_LOSS = "P_brake_loss [kW]";
-		private const string P_ENG_POS = "P_eng_out_pos [kW]";
-		private const string P_ENG_NEG = "P_eng_out_neg [kW]";
-
-		private const string E_AUX_FORMAT = "E_aux_{0} [kWh]";
-		private const string E_AUX = "E_aux_sum [kWh]";
-
-		private const string E_AIR = "E_air [kWh]";
-		private const string E_ROLL = "E_roll [kWh]";
-		private const string E_GRAD = "E_grad [kWh]";
-		private const string E_INERTIA = "E_inertia [kWh]";
-		private const string E_BRAKE = "E_brake [kWh]";
-		private const string E_GBX_AXL_LOSS = "E_gbx_axl_loss [kWh]";
-		private const string E_RET_LOSS = "E_ret_loss [kWh]";
-		private const string E_TC_LOSS = "E_tc_loss [kWh]";
-		private const string E_ENG_POS = "E_eng_out_pos [kWh]";
-		private const string E_ENG_NEG = "E_eng_out_neg [kWh]";
-
-		private const string ACC = "a [m/s^2]";
-		private const string ACC_POS = "a_pos [m/s^2]";
-		private const string ACC_NEG = "a_neg [m/s^2]";
-
-		private const string ACC_TIMESHARE = "AccelerationTimeShare [%]";
-		private const string DEC_TIMESHARE = "DecelerationTimeShare [%]";
-		private const string CRUISE_TIMESHARE = "CruiseTimeShare [%]";
-		private const string STOP_TIMESHARE = "StopTimeShare [%]";
+		public const string JOB = "Job [-]";
+		public const string INPUTFILE = "Input File [-]";
+		public const string CYCLE = "Cycle [-]";
+		public const string STATUS = "Status";
+		public const string MASS = "Mass [kg]";
+		public const string LOADING = "Loading [kg]";
+		public const string TIME = "time [s]";
+		public const string DISTANCE = "distance [km]";
+		public const string SPEED = "speed [km/h]";
+		public const string ALTITUDE_DELTA = "altitudeDelta [m]";
+
+		public const string FCMAP_H = "FC-Map [g/h]";
+		public const string FCMAP_KM = "FC-Map [g/km]";
+		public const string FCAUXC_H = "FC-AUXc [g/h]";
+		public const string FCAUXC_KM = "FC-AUXc [g/km]";
+		public const string FCWHTCC_H = "FC-WHTCc [g/h]";
+		public const string FCWHTCC_KM = "FC-WHTCc [g/km]";
+		public const string FCAAUX_H = "FC-AAUX [g/h]";
+		public const string FCAAUX_KM = "FC-AAUX [g/km]";
+
+		public const string FCFINAL_H = "FC-Final [g/h]";
+		public const string FCFINAL_KM = "FC-Final [g/km]";
+		public const string FCFINAL_LITERPER100KM = "FC-Final [l/100km]";
+		public const string FCFINAL_LITERPER100TKM = "FC-Final [l/100tkm]";
+
+		public const string CO2_KM = "CO2 [g/km]";
+		public const string CO2_TKM = "CO2 [g/tkm]";
+
+		public const string P_WHEEL_POS = "P_wheel_in_pos [kW]";
+		public const string P_BRAKE_LOSS = "P_brake_loss [kW]";
+		public const string P_ENG_POS = "P_eng_out_pos [kW]";
+		public const string P_ENG_NEG = "P_eng_out_neg [kW]";
+
+		public const string E_AUX_FORMAT = "E_aux_{0} [kWh]";
+		public const string E_AUX = "E_aux_sum [kWh]";
+
+		public const string E_AIR = "E_air [kWh]";
+		public const string E_ROLL = "E_roll [kWh]";
+		public const string E_GRAD = "E_grad [kWh]";
+		public const string E_INERTIA = "E_inertia [kWh]";
+		public const string E_BRAKE = "E_brake [kWh]";
+		public const string E_GBX_AXL_LOSS = "E_gbx_axl_loss [kWh]";
+		public const string E_RET_LOSS = "E_ret_loss [kWh]";
+		public const string E_TC_LOSS = "E_tc_loss [kWh]";
+		public const string E_ENG_POS = "E_eng_out_pos [kWh]";
+		public const string E_ENG_NEG = "E_eng_out_neg [kWh]";
+
+		public const string ACC = "a [m/s^2]";
+		public const string ACC_POS = "a_pos [m/s^2]";
+		public const string ACC_NEG = "a_neg [m/s^2]";
+
+		public const string ACC_TIMESHARE = "AccelerationTimeShare [%]";
+		public const string DEC_TIMESHARE = "DecelerationTimeShare [%]";
+		public const string CRUISE_TIMESHARE = "CruiseTimeShare [%]";
+		public const string STOP_TIMESHARE = "StopTimeShare [%]";
 		// ReSharper restore InconsistentNaming
 
 		private readonly DataTable _table;
diff --git a/VectoCore/VectoCore/Utils/DelaunayMap.cs b/VectoCore/VectoCore/Utils/DelaunayMap.cs
index 852d9571a24825ad742d1a6fec8c2c5b73b19745..54036b56b7e8f64c39dc4d9a2e8e2c5d7c6c7ab3 100644
--- a/VectoCore/VectoCore/Utils/DelaunayMap.cs
+++ b/VectoCore/VectoCore/Utils/DelaunayMap.cs
@@ -39,6 +39,7 @@ using System.Windows.Forms.DataVisualization.Charting;
 using TUGraz.VectoCommon.Exceptions;
 using TUGraz.VectoCommon.Models;
 using TUGraz.VectoCommon.Utils;
+using Point = TUGraz.VectoCommon.Utils.Point;
 
 namespace TUGraz.VectoCore.Utils
 {
diff --git a/VectoCore/VectoCore/VectoCore.csproj b/VectoCore/VectoCore/VectoCore.csproj
index 3de550b75edc48eb09dcb5b1e3027c889cfb9134..590d36f54cc46006a7b7c88627b5826895548c17 100644
--- a/VectoCore/VectoCore/VectoCore.csproj
+++ b/VectoCore/VectoCore/VectoCore.csproj
@@ -187,7 +187,6 @@
     <Compile Include="Models\Simulation\DataBus\IClutchInfo.cs" />
     <Compile Include="Models\Simulation\DataBus\IDriverInfo.cs" />
     <Compile Include="Models\Simulation\DataBus\IWheelsInfo.cs" />
-    <Compile Include="Models\Simulation\Data\AuxiliaryDemandType.cs" />
     <Compile Include="Models\SimulationComponent\Data\AuxiliaryType.cs" />
     <Compile Include="Models\SimulationComponent\Data\FullLoadCurve.cs" />
     <Compile Include="Models\Simulation\DataBus\IMileageCounter.cs" />
diff --git a/VectoCore/VectoCoreTest/Models/Declaration/ShiftPolygonTest.cs b/VectoCore/VectoCoreTest/Models/Declaration/ShiftPolygonTest.cs
index 99d82a1d7c4377373d27a0d2a81a1e171d11278b..be989b1e3242d524b9a1df535ed1fcfe0a6ffe45 100644
--- a/VectoCore/VectoCoreTest/Models/Declaration/ShiftPolygonTest.cs
+++ b/VectoCore/VectoCoreTest/Models/Declaration/ShiftPolygonTest.cs
@@ -48,7 +48,7 @@ using TUGraz.VectoCore.Models.SimulationComponent.Data.Gearbox;
 using TUGraz.VectoCore.Tests.Utils;
 using TUGraz.VectoCore.Utils;
 using Assert = Microsoft.VisualStudio.TestTools.UnitTesting.Assert;
-using Point = TUGraz.VectoCore.Utils.Point;
+using Point = TUGraz.VectoCommon.Utils.Point;
 
 namespace TUGraz.VectoCore.Tests.Models.Declaration
 {
diff --git a/VectoCore/VectoCoreTest/Models/SimulationComponentData/ValidationTest.cs b/VectoCore/VectoCoreTest/Models/SimulationComponentData/ValidationTest.cs
index f87c11281fc06994852732d24aa1ac4400773885..fbe300dc444c6b5c62f9c0c303b5cb83ab4f6365 100644
--- a/VectoCore/VectoCoreTest/Models/SimulationComponentData/ValidationTest.cs
+++ b/VectoCore/VectoCoreTest/Models/SimulationComponentData/ValidationTest.cs
@@ -38,6 +38,7 @@ using TUGraz.VectoCommon.Models;
 using TUGraz.VectoCommon.Utils;
 using TUGraz.VectoCore.InputData.Reader;
 using TUGraz.VectoCore.InputData.Reader.DataObjectAdaper;
+using TUGraz.VectoCore.InputData.Reader.DataObjectAdapter;
 using TUGraz.VectoCore.Models.Simulation.Data;
 using TUGraz.VectoCore.Models.Simulation.Impl;
 using TUGraz.VectoCore.Models.SimulationComponent.Data;
diff --git a/VectoCore/VectoCoreTest/Utils/MockSimulationDataFactory.cs b/VectoCore/VectoCoreTest/Utils/MockSimulationDataFactory.cs
index c4bc81c2faf2f2a9abd3be8470964cab1bdcc71a..5f188d92bddd876407e8f2532492c5eb1d689c6c 100644
--- a/VectoCore/VectoCoreTest/Utils/MockSimulationDataFactory.cs
+++ b/VectoCore/VectoCoreTest/Utils/MockSimulationDataFactory.cs
@@ -34,6 +34,7 @@ using TUGraz.VectoCommon.InputData;
 using TUGraz.VectoCommon.Utils;
 using TUGraz.VectoCore.InputData.FileIO.JSON;
 using TUGraz.VectoCore.InputData.Reader.DataObjectAdaper;
+using TUGraz.VectoCore.InputData.Reader.DataObjectAdapter;
 using TUGraz.VectoCore.Models.SimulationComponent.Data;
 
 namespace TUGraz.VectoCore.Tests.Utils
diff --git a/VectoCore/VectoCoreTest/Utils/ShiftPolygonDrawer.cs b/VectoCore/VectoCoreTest/Utils/ShiftPolygonDrawer.cs
index 9518333dc48a7886043629e93de81ab97d45e33c..994b829230837f6f68883df95ca89af7567233a4 100644
--- a/VectoCore/VectoCoreTest/Utils/ShiftPolygonDrawer.cs
+++ b/VectoCore/VectoCoreTest/Utils/ShiftPolygonDrawer.cs
@@ -40,7 +40,7 @@ using TUGraz.VectoCommon.Utils;
 using TUGraz.VectoCore.Configuration;
 using TUGraz.VectoCore.Models.SimulationComponent.Data.Engine;
 using TUGraz.VectoCore.Models.SimulationComponent.Data.Gearbox;
-using Point = TUGraz.VectoCore.Utils.Point;
+using Point = TUGraz.VectoCommon.Utils.Point;
 
 namespace TUGraz.VectoCore.Tests.Utils
 {