Index: trunk/sources/HeuristicLab.Hive.Client.Common/NetworkEnum.cs
===================================================================
--- trunk/sources/HeuristicLab.Hive.Client.Common/NetworkEnum.cs	(revision 1131)
+++ trunk/sources/HeuristicLab.Hive.Client.Common/NetworkEnum.cs	(revision 1132)
@@ -1,3 +1,24 @@
-﻿using System;
+﻿#region License Information
+/* HeuristicLab
+ * Copyright (C) 2002-2008 Heuristic and Evolutionary Algorithms Laboratory (HEAL)
+ *
+ * This file is part of HeuristicLab.
+ *
+ * HeuristicLab is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * HeuristicLab is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with HeuristicLab. If not, see <http://www.gnu.org/licenses/>.
+ */
+#endregion
+
+using System;
 using System.Collections.Generic;
 using System.Linq;
Index: trunk/sources/HeuristicLab.Hive.Client.Communication/WcfService.cs
===================================================================
--- trunk/sources/HeuristicLab.Hive.Client.Communication/WcfService.cs	(revision 1131)
+++ trunk/sources/HeuristicLab.Hive.Client.Communication/WcfService.cs	(revision 1132)
@@ -1,3 +1,24 @@
-﻿using System;
+﻿#region License Information
+/* HeuristicLab
+ * Copyright (C) 2002-2008 Heuristic and Evolutionary Algorithms Laboratory (HEAL)
+ *
+ * This file is part of HeuristicLab.
+ *
+ * HeuristicLab is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * HeuristicLab is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with HeuristicLab. If not, see <http://www.gnu.org/licenses/>.
+ */
+#endregion
+
+using System;
 using System.Collections.Generic;
 using System.Linq;
@@ -11,6 +32,13 @@
 
 namespace HeuristicLab.Hive.Client.Communication {
+  /// <summary>
+  /// WcfService class is implemented as a Singleton and works as a communication Layer with the Server
+  /// </summary>
   public class WcfService {
     private static WcfService instance;
+    /// <summary>
+    /// Getter for the Instance of the WcfService
+    /// </summary>
+    /// <returns>the Instance of the WcfService class</returns>
     public static WcfService Instance {
       get {
@@ -33,7 +61,14 @@
     public ClientCommunicatorClient proxy = null;
 
+    /// <summary>
+    /// Constructor
+    /// </summary>
     private WcfService() {
       ConnState = NetworkEnum.WcfConnState.Disconnected;
     }
+
+    /// <summary>
+    /// Connects with the Server, registers the events and fires the Connected (and quiet possibly the ConnectionRestored) Event.
+    /// </summary>
     public void Connect() {
       try {
@@ -63,4 +98,9 @@
     }
 
+    /// <summary>
+    /// Changes the Connectionsettings (serverIP & serverPort) and reconnects
+    /// </summary>
+    /// <param name="serverIP">current Server IP</param>
+    /// <param name="serverPort">current Server Port</param>
     public void Connect(String serverIP, int serverPort) {
       String oldIp = this.ServerIP;
@@ -73,9 +113,16 @@
           ServerChanged(this, new EventArgs());
     }
-
+    
+    /// <summary>
+    /// Disconnects the Client from the Server
+    /// </summary>
     public void Disconnect() {
       ConnState = NetworkEnum.WcfConnState.Disconnected;
     }
 
+    /// <summary>
+    /// Network communication Error Handler - Every network error gets logged and the connection switches to faulted state
+    /// </summary>
+    /// <param name="e">The Exception</param>
     private void NetworkErrorHandling(Exception e) {
       ConnState = NetworkEnum.WcfConnState.Failed;
@@ -83,4 +130,9 @@
     }
 
+    
+
+    /// <summary>
+    /// Methods for the Server Login
+    /// </summary>
     #region Login
     public event System.EventHandler<LoginCompletedEventArgs> LoginCompleted;
@@ -110,4 +162,7 @@
     #endregion
 
+    /// <summary>
+    /// Pull a Job from the Server
+    /// </summary>
     #region PullJob
     public event System.EventHandler<PullJobCompletedEventArgs> PullJobCompleted;
@@ -124,4 +179,7 @@
     #endregion
 
+    /// <summary>
+    /// Send back finished Job Results
+    /// </summary>
     #region SendJobResults
     public event System.EventHandler<SendJobResultCompletedEventArgs> SendJobResultCompleted;
@@ -147,4 +205,7 @@
     #endregion
 
+    /// <summary>
+    /// Methods for sending the periodically Heartbeat
+    /// </summary>
     #region Heartbeat
 
Index: trunk/sources/HeuristicLab.Hive.Client.Console/Service References/ClientService/Reference.cs
===================================================================
--- trunk/sources/HeuristicLab.Hive.Client.Console/Service References/ClientService/Reference.cs	(revision 1131)
+++ trunk/sources/HeuristicLab.Hive.Client.Console/Service References/ClientService/Reference.cs	(revision 1132)
@@ -322,12 +322,4 @@
         HeuristicLab.Hive.Client.Console.ClientService.StatusCommons EndGetStatusInfos(System.IAsyncResult result);
         
-        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IClientConsoleCommunicator/GetConnection", ReplyAction="http://tempuri.org/IClientConsoleCommunicator/GetConnectionResponse")]
-        HeuristicLab.Hive.Client.Console.ClientService.ConnectionContainer GetConnection();
-        
-        [System.ServiceModel.OperationContractAttribute(AsyncPattern=true, Action="http://tempuri.org/IClientConsoleCommunicator/GetConnection", ReplyAction="http://tempuri.org/IClientConsoleCommunicator/GetConnectionResponse")]
-        System.IAsyncResult BeginGetConnection(System.AsyncCallback callback, object asyncState);
-        
-        HeuristicLab.Hive.Client.Console.ClientService.ConnectionContainer EndGetConnection(System.IAsyncResult result);
-        
         [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IClientConsoleCommunicator/SetConnection", ReplyAction="http://tempuri.org/IClientConsoleCommunicator/SetConnectionResponse")]
         void SetConnection(HeuristicLab.Hive.Client.Console.ClientService.ConnectionContainer container);
@@ -388,23 +380,4 @@
     [System.Diagnostics.DebuggerStepThroughAttribute()]
     [System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "3.0.0.0")]
-    public partial class GetConnectionCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
-        
-        private object[] results;
-        
-        public GetConnectionCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
-                base(exception, cancelled, userState) {
-            this.results = results;
-        }
-        
-        public HeuristicLab.Hive.Client.Console.ClientService.ConnectionContainer Result {
-            get {
-                base.RaiseExceptionIfNecessary();
-                return ((HeuristicLab.Hive.Client.Console.ClientService.ConnectionContainer)(this.results[0]));
-            }
-        }
-    }
-    
-    [System.Diagnostics.DebuggerStepThroughAttribute()]
-    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "3.0.0.0")]
     public partial class GetCurrentConnectionCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
         
@@ -434,10 +407,4 @@
         private System.Threading.SendOrPostCallback onGetStatusInfosCompletedDelegate;
         
-        private BeginOperationDelegate onBeginGetConnectionDelegate;
-        
-        private EndOperationDelegate onEndGetConnectionDelegate;
-        
-        private System.Threading.SendOrPostCallback onGetConnectionCompletedDelegate;
-        
         private BeginOperationDelegate onBeginSetConnectionDelegate;
         
@@ -484,6 +451,4 @@
         
         public event System.EventHandler<GetStatusInfosCompletedEventArgs> GetStatusInfosCompleted;
-        
-        public event System.EventHandler<GetConnectionCompletedEventArgs> GetConnectionCompleted;
         
         public event System.EventHandler<System.ComponentModel.AsyncCompletedEventArgs> SetConnectionCompleted;
@@ -543,52 +508,4 @@
         }
         
-        public HeuristicLab.Hive.Client.Console.ClientService.ConnectionContainer GetConnection() {
-            return base.Channel.GetConnection();
-        }
-        
-        [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)]
-        public System.IAsyncResult BeginGetConnection(System.AsyncCallback callback, object asyncState) {
-            return base.Channel.BeginGetConnection(callback, asyncState);
-        }
-        
-        [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)]
-        public HeuristicLab.Hive.Client.Console.ClientService.ConnectionContainer EndGetConnection(System.IAsyncResult result) {
-            return base.Channel.EndGetConnection(result);
-        }
-        
-        private System.IAsyncResult OnBeginGetConnection(object[] inValues, System.AsyncCallback callback, object asyncState) {
-            return this.BeginGetConnection(callback, asyncState);
-        }
-        
-        private object[] OnEndGetConnection(System.IAsyncResult result) {
-            HeuristicLab.Hive.Client.Console.ClientService.ConnectionContainer retVal = this.EndGetConnection(result);
-            return new object[] {
-                    retVal};
-        }
-        
-        private void OnGetConnectionCompleted(object state) {
-            if ((this.GetConnectionCompleted != null)) {
-                InvokeAsyncCompletedEventArgs e = ((InvokeAsyncCompletedEventArgs)(state));
-                this.GetConnectionCompleted(this, new GetConnectionCompletedEventArgs(e.Results, e.Error, e.Cancelled, e.UserState));
-            }
-        }
-        
-        public void GetConnectionAsync() {
-            this.GetConnectionAsync(null);
-        }
-        
-        public void GetConnectionAsync(object userState) {
-            if ((this.onBeginGetConnectionDelegate == null)) {
-                this.onBeginGetConnectionDelegate = new BeginOperationDelegate(this.OnBeginGetConnection);
-            }
-            if ((this.onEndGetConnectionDelegate == null)) {
-                this.onEndGetConnectionDelegate = new EndOperationDelegate(this.OnEndGetConnection);
-            }
-            if ((this.onGetConnectionCompletedDelegate == null)) {
-                this.onGetConnectionCompletedDelegate = new System.Threading.SendOrPostCallback(this.OnGetConnectionCompleted);
-            }
-            base.InvokeAsync(this.onBeginGetConnectionDelegate, null, this.onEndGetConnectionDelegate, this.onGetConnectionCompletedDelegate, userState);
-        }
-        
         public void SetConnection(HeuristicLab.Hive.Client.Console.ClientService.ConnectionContainer container) {
             base.Channel.SetConnection(container);
Index: trunk/sources/HeuristicLab.Hive.Client.Console/Service References/ClientService/configuration.svcinfo
===================================================================
--- trunk/sources/HeuristicLab.Hive.Client.Console/Service References/ClientService/configuration.svcinfo	(revision 1131)
+++ trunk/sources/HeuristicLab.Hive.Client.Console/Service References/ClientService/configuration.svcinfo	(revision 1132)
@@ -6,5 +6,5 @@
   </bindings>
   <endpoints>
-    <endpoint normalizedDigest="&lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-16&quot;?&gt;&lt;Data address=&quot;net.tcp://127.0.0.1:8000/ClientConsole/ClientConsoleCommunicator&quot; binding=&quot;netTcpBinding&quot; bindingConfiguration=&quot;NetTcpBinding_IClientConsoleCommunicator&quot; contract=&quot;ClientService.IClientConsoleCommunicator&quot; name=&quot;NetTcpBinding_IClientConsoleCommunicator&quot;&gt;&lt;identity&gt;&lt;userPrincipalName value=&quot;mse08004@fhs-hagenberg.ac.at&quot; /&gt;&lt;/identity&gt;&lt;/Data&gt;" digest="&lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-16&quot;?&gt;&lt;Data address=&quot;net.tcp://127.0.0.1:8000/ClientConsole/ClientConsoleCommunicator&quot; binding=&quot;netTcpBinding&quot; bindingConfiguration=&quot;NetTcpBinding_IClientConsoleCommunicator&quot; contract=&quot;ClientService.IClientConsoleCommunicator&quot; name=&quot;NetTcpBinding_IClientConsoleCommunicator&quot;&gt;&lt;identity&gt;&lt;userPrincipalName value=&quot;mse08004@fhs-hagenberg.ac.at&quot; /&gt;&lt;/identity&gt;&lt;/Data&gt;" contractName="ClientService.IClientConsoleCommunicator" name="NetTcpBinding_IClientConsoleCommunicator" />
+    <endpoint normalizedDigest="&lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-16&quot;?&gt;&lt;Data address=&quot;net.tcp://127.0.0.1:8000/ClientConsole/ClientConsoleCommunicator&quot; binding=&quot;netTcpBinding&quot; bindingConfiguration=&quot;NetTcpBinding_IClientConsoleCommunicator&quot; contract=&quot;ClientService.IClientConsoleCommunicator&quot; name=&quot;NetTcpBinding_IClientConsoleCommunicator&quot;&gt;&lt;identity&gt;&lt;userPrincipalName value=&quot;mse08003@fhs-hagenberg.ac.at&quot; /&gt;&lt;/identity&gt;&lt;/Data&gt;" digest="&lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-16&quot;?&gt;&lt;Data address=&quot;net.tcp://127.0.0.1:8000/ClientConsole/ClientConsoleCommunicator&quot; binding=&quot;netTcpBinding&quot; bindingConfiguration=&quot;NetTcpBinding_IClientConsoleCommunicator&quot; contract=&quot;ClientService.IClientConsoleCommunicator&quot; name=&quot;NetTcpBinding_IClientConsoleCommunicator&quot;&gt;&lt;identity&gt;&lt;userPrincipalName value=&quot;mse08003@fhs-hagenberg.ac.at&quot; /&gt;&lt;/identity&gt;&lt;/Data&gt;" contractName="ClientService.IClientConsoleCommunicator" name="NetTcpBinding_IClientConsoleCommunicator" />
   </endpoints>
 </configurationSnapshot>
Index: trunk/sources/HeuristicLab.Hive.Client.Console/Service References/ClientService/configuration91.svcinfo
===================================================================
--- trunk/sources/HeuristicLab.Hive.Client.Console/Service References/ClientService/configuration91.svcinfo	(revision 1131)
+++ trunk/sources/HeuristicLab.Hive.Client.Console/Service References/ClientService/configuration91.svcinfo	(revision 1132)
@@ -1,4 +1,4 @@
 <?xml version="1.0" encoding="utf-8"?>
-<SavedWcfConfigurationInformation xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" Version="9.1" CheckSum="LJHqHAg9UO+arib7mQMPUcNSFqQ=">
+<SavedWcfConfigurationInformation xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" Version="9.1" CheckSum="hpOV9r43IeNDEU5uqNBUck5ld7s=">
   <bindingConfigurations>
     <bindingConfiguration bindingType="netTcpBinding" name="NetTcpBinding_IClientConsoleCommunicator">
@@ -137,5 +137,5 @@
         </property>
         <property path="/identity/userPrincipalName/value" isComplexType="false" isExplicitlyDefined="true" clrType="System.String, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
-          <serializedValue>mse08004@fhs-hagenberg.ac.at</serializedValue>
+          <serializedValue>mse08003@fhs-hagenberg.ac.at</serializedValue>
         </property>
         <property path="/identity/servicePrincipalName" isComplexType="true" isExplicitlyDefined="false" clrType="System.ServiceModel.Configuration.ServicePrincipalNameElement, System.ServiceModel, Version=3.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
Index: trunk/sources/HeuristicLab.Hive.Client.Console/Service References/ClientService/service.wsdl
===================================================================
--- trunk/sources/HeuristicLab.Hive.Client.Console/Service References/ClientService/service.wsdl	(revision 1131)
+++ trunk/sources/HeuristicLab.Hive.Client.Console/Service References/ClientService/service.wsdl	(revision 1132)
@@ -48,10 +48,4 @@
     <wsdl:part name="parameters" element="tns:GetStatusInfosResponse" />
   </wsdl:message>
-  <wsdl:message name="IClientConsoleCommunicator_GetConnection_InputMessage">
-    <wsdl:part name="parameters" element="tns:GetConnection" />
-  </wsdl:message>
-  <wsdl:message name="IClientConsoleCommunicator_GetConnection_OutputMessage">
-    <wsdl:part name="parameters" element="tns:GetConnectionResponse" />
-  </wsdl:message>
   <wsdl:message name="IClientConsoleCommunicator_SetConnection_InputMessage">
     <wsdl:part name="parameters" element="tns:SetConnection" />
@@ -83,8 +77,4 @@
       <wsdl:output wsaw:Action="http://tempuri.org/IClientConsoleCommunicator/GetStatusInfosResponse" message="tns:IClientConsoleCommunicator_GetStatusInfos_OutputMessage" />
     </wsdl:operation>
-    <wsdl:operation name="GetConnection">
-      <wsdl:input wsaw:Action="http://tempuri.org/IClientConsoleCommunicator/GetConnection" message="tns:IClientConsoleCommunicator_GetConnection_InputMessage" />
-      <wsdl:output wsaw:Action="http://tempuri.org/IClientConsoleCommunicator/GetConnectionResponse" message="tns:IClientConsoleCommunicator_GetConnection_OutputMessage" />
-    </wsdl:operation>
     <wsdl:operation name="SetConnection">
       <wsdl:input wsaw:Action="http://tempuri.org/IClientConsoleCommunicator/SetConnection" message="tns:IClientConsoleCommunicator_SetConnection_InputMessage" />
@@ -110,13 +100,4 @@
     <wsdl:operation name="GetStatusInfos">
       <soap12:operation soapAction="http://tempuri.org/IClientConsoleCommunicator/GetStatusInfos" style="document" />
-      <wsdl:input>
-        <soap12:body use="literal" />
-      </wsdl:input>
-      <wsdl:output>
-        <soap12:body use="literal" />
-      </wsdl:output>
-    </wsdl:operation>
-    <wsdl:operation name="GetConnection">
-      <soap12:operation soapAction="http://tempuri.org/IClientConsoleCommunicator/GetConnection" style="document" />
       <wsdl:input>
         <soap12:body use="literal" />
@@ -169,5 +150,5 @@
         <wsa10:Address>net.tcp://127.0.0.1:8000/ClientConsole/ClientConsoleCommunicator</wsa10:Address>
         <Identity xmlns="http://schemas.xmlsoap.org/ws/2006/02/addressingidentity">
-          <Upn>mse08004@fhs-hagenberg.ac.at</Upn>
+          <Upn>mse08003@fhs-hagenberg.ac.at</Upn>
         </Identity>
       </wsa10:EndpointReference>
Index: trunk/sources/HeuristicLab.Hive.Client.Console/Service References/ClientService/service.xsd
===================================================================
--- trunk/sources/HeuristicLab.Hive.Client.Console/Service References/ClientService/service.xsd	(revision 1131)
+++ trunk/sources/HeuristicLab.Hive.Client.Console/Service References/ClientService/service.xsd	(revision 1132)
@@ -14,20 +14,8 @@
     </xs:complexType>
   </xs:element>
-  <xs:element name="GetConnection">
-    <xs:complexType>
-      <xs:sequence />
-    </xs:complexType>
-  </xs:element>
-  <xs:element name="GetConnectionResponse">
-    <xs:complexType>
-      <xs:sequence>
-        <xs:element xmlns:q2="http://schemas.datacontract.org/2004/07/HeuristicLab.Hive.Client.Core.ClientConsoleService" minOccurs="0" name="GetConnectionResult" nillable="true" type="q2:ConnectionContainer" />
-      </xs:sequence>
-    </xs:complexType>
-  </xs:element>
   <xs:element name="SetConnection">
     <xs:complexType>
       <xs:sequence>
-        <xs:element xmlns:q3="http://schemas.datacontract.org/2004/07/HeuristicLab.Hive.Client.Core.ClientConsoleService" minOccurs="0" name="container" nillable="true" type="q3:ConnectionContainer" />
+        <xs:element xmlns:q2="http://schemas.datacontract.org/2004/07/HeuristicLab.Hive.Client.Core.ClientConsoleService" minOccurs="0" name="container" nillable="true" type="q2:ConnectionContainer" />
       </xs:sequence>
     </xs:complexType>
@@ -56,5 +44,5 @@
     <xs:complexType>
       <xs:sequence>
-        <xs:element xmlns:q4="http://schemas.datacontract.org/2004/07/HeuristicLab.Hive.Client.Core.ClientConsoleService" minOccurs="0" name="GetCurrentConnectionResult" nillable="true" type="q4:ConnectionContainer" />
+        <xs:element xmlns:q3="http://schemas.datacontract.org/2004/07/HeuristicLab.Hive.Client.Core.ClientConsoleService" minOccurs="0" name="GetCurrentConnectionResult" nillable="true" type="q3:ConnectionContainer" />
       </xs:sequence>
     </xs:complexType>
Index: trunk/sources/HeuristicLab.Hive.Client.Core/ClientConsoleService/ClientConsoleCommunicator.cs
===================================================================
--- trunk/sources/HeuristicLab.Hive.Client.Core/ClientConsoleService/ClientConsoleCommunicator.cs	(revision 1131)
+++ trunk/sources/HeuristicLab.Hive.Client.Core/ClientConsoleService/ClientConsoleCommunicator.cs	(revision 1132)
@@ -17,8 +17,4 @@
         return ConfigManager.Instance.GetStatusForClientConsole();
       }
-    }
-
-    public ConnectionContainer GetConnection() {
-      return new ConnectionContainer{IPAdress = WcfService.Instance.ServerIP, Port = WcfService.Instance.ServerPort } ;
     }
 
Index: trunk/sources/HeuristicLab.Hive.Client.Core/ClientConsoleService/Interfaces/IClientConsoleCommunicator.cs
===================================================================
--- trunk/sources/HeuristicLab.Hive.Client.Core/ClientConsoleService/Interfaces/IClientConsoleCommunicator.cs	(revision 1131)
+++ trunk/sources/HeuristicLab.Hive.Client.Core/ClientConsoleService/Interfaces/IClientConsoleCommunicator.cs	(revision 1132)
@@ -1,3 +1,24 @@
-﻿using System;
+﻿#region License Information
+/* HeuristicLab
+ * Copyright (C) 2002-2008 Heuristic and Evolutionary Algorithms Laboratory (HEAL)
+ *
+ * This file is part of HeuristicLab.
+ *
+ * HeuristicLab is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * HeuristicLab is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with HeuristicLab. If not, see <http://www.gnu.org/licenses/>.
+ */
+#endregion
+
+using System;
 using System.Collections.Generic;
 using System.Linq;
@@ -6,16 +27,35 @@
 
 namespace HeuristicLab.Hive.Client.Core.ClientConsoleService.Interfaces {
+  /// <summary>
+  /// Defines the interfaces for the Client Console
+  /// </summary>
   [ServiceContract]
   public interface IClientConsoleCommunicator {
+    /// <summary>
+    /// Gets all status information concerning the client Service
+    /// </summary>
+    /// <returns>the StatusCommons Object, filled with the client details</returns>
     [OperationContract]
     StatusCommons GetStatusInfos();
-    [OperationContract]
-    ConnectionContainer GetConnection();
+    /// <summary>
+    /// Set the connection settings in the wcfService
+    /// </summary>
+    /// <param name="container">the container with the connection details</param>
     [OperationContract]
     void SetConnection(ConnectionContainer container);
+    /// <summary>
+    /// Signals the client to disconnect from the server
+    /// </summary>
     [OperationContract]
     void Disconnect();
+    /// <summary>
+    /// Get the current connection details
+    /// </summary>
+    /// <returns>the ConnectionContainer Object</returns>
     [OperationContract]
     ConnectionContainer GetCurrentConnection();
+    /// <summary>
+    /// Signals the client to exit all jobs and shutdown
+    /// </summary>
     [OperationContract]
     void ShutdownClient();
Index: trunk/sources/HeuristicLab.Hive.Client.Core/ClientConsoleService/TransferObjects/ConnectionContainer.cs
===================================================================
--- trunk/sources/HeuristicLab.Hive.Client.Core/ClientConsoleService/TransferObjects/ConnectionContainer.cs	(revision 1131)
+++ trunk/sources/HeuristicLab.Hive.Client.Core/ClientConsoleService/TransferObjects/ConnectionContainer.cs	(revision 1132)
@@ -1,3 +1,24 @@
-﻿using System;
+﻿#region License Information
+/* HeuristicLab
+ * Copyright (C) 2002-2008 Heuristic and Evolutionary Algorithms Laboratory (HEAL)
+ *
+ * This file is part of HeuristicLab.
+ *
+ * HeuristicLab is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * HeuristicLab is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with HeuristicLab. If not, see <http://www.gnu.org/licenses/>.
+ */
+#endregion
+
+using System;
 using System.Collections.Generic;
 using System.Linq;
Index: trunk/sources/HeuristicLab.Hive.Client.Core/ClientConsoleService/TransferObjects/JobStatus.cs
===================================================================
--- trunk/sources/HeuristicLab.Hive.Client.Core/ClientConsoleService/TransferObjects/JobStatus.cs	(revision 1131)
+++ trunk/sources/HeuristicLab.Hive.Client.Core/ClientConsoleService/TransferObjects/JobStatus.cs	(revision 1132)
@@ -1,3 +1,24 @@
-﻿using System;
+﻿#region License Information
+/* HeuristicLab
+ * Copyright (C) 2002-2008 Heuristic and Evolutionary Algorithms Laboratory (HEAL)
+ *
+ * This file is part of HeuristicLab.
+ *
+ * HeuristicLab is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * HeuristicLab is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with HeuristicLab. If not, see <http://www.gnu.org/licenses/>.
+ */
+#endregion
+
+using System;
 using System.Collections.Generic;
 using System.Linq;
@@ -8,8 +29,17 @@
   [DataContract]
   public class JobStatus {
+    /// <summary>
+    /// Id of the Job
+    /// </summary>
     [DataMember]
     public long JobId { get; set; }
+    /// <summary>
+    /// When has the calculation of the Job begun?
+    /// </summary>
     [DataMember]
     public DateTime Since { get; set; }
+    /// <summary>
+    /// Current progress
+    /// </summary>
     [DataMember]
     public double Progress { get; set; }
Index: trunk/sources/HeuristicLab.Hive.Client.Core/ClientConsoleService/TransferObjects/StatusCommons.cs
===================================================================
--- trunk/sources/HeuristicLab.Hive.Client.Core/ClientConsoleService/TransferObjects/StatusCommons.cs	(revision 1131)
+++ trunk/sources/HeuristicLab.Hive.Client.Core/ClientConsoleService/TransferObjects/StatusCommons.cs	(revision 1132)
@@ -1,3 +1,24 @@
-﻿using System;
+﻿#region License Information
+/* HeuristicLab
+ * Copyright (C) 2002-2008 Heuristic and Evolutionary Algorithms Laboratory (HEAL)
+ *
+ * This file is part of HeuristicLab.
+ *
+ * HeuristicLab is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * HeuristicLab is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with HeuristicLab. If not, see <http://www.gnu.org/licenses/>.
+ */
+#endregion
+
+using System;
 using System.Collections.Generic;
 using System.Linq;
@@ -7,4 +28,7 @@
 
 namespace HeuristicLab.Hive.Client.Core.ClientConsoleService {
+  /// <summary>
+  /// Various Status Information for the ClientConsole
+  /// </summary>
   [DataContract]
   public class StatusCommons {    
Index: trunk/sources/HeuristicLab.Hive.Client.Core/ConfigurationManager/ConfigManager.cs
===================================================================
--- trunk/sources/HeuristicLab.Hive.Client.Core/ConfigurationManager/ConfigManager.cs	(revision 1131)
+++ trunk/sources/HeuristicLab.Hive.Client.Core/ConfigurationManager/ConfigManager.cs	(revision 1132)
@@ -51,7 +51,5 @@
     /// Constructor for the singleton, must recover Guid, Calendar, ...
     /// </summary>
-    private ConfigManager() {
-      //retrive GUID from XML file, or burn in hell. as in hell. not heaven.
-      //this won't work this way. We need a plugin for XML Handling.      
+    private ConfigManager() {      
       hardwareInfo = new ClientInfo();
 
@@ -68,4 +66,8 @@
     }
 
+    /// <summary>
+    /// Get all the Information about the client
+    /// </summary>
+    /// <returns>the ClientInfo object</returns>
     public ClientInfo GetClientInfo() {
       hardwareInfo.Login = WcfService.Instance.ConnectedSince;
@@ -73,4 +75,8 @@
     }
 
+    /// <summary>
+    /// Returns the connectioncontainer with the IP and Port, storred in the Settings framework
+    /// </summary>
+    /// <returns>The IP and Port of the server</returns>
     public ConnectionContainer GetServerIPAndPort() {
       ConnectionContainer cc = new ConnectionContainer();
@@ -80,4 +86,8 @@
     }
 
+    /// <summary>
+    /// Sets and saves IP and Port in the Settings framework
+    /// </summary>
+    /// <param name="cc"></param>
     public void SetServerIPAndPort(ConnectionContainer cc) {
       Settings.Default.ServerIP = cc.IPAdress;
@@ -85,5 +95,8 @@
       Settings.Default.Save();
     }
-
+    /// <summary>
+    /// collects and returns information that get displayed by the Client Console
+    /// </summary>
+    /// <returns></returns>
     public StatusCommons GetStatusForClientConsole() {
       StatusCommons st = new StatusCommons();
Index: trunk/sources/HeuristicLab.Hive.Client.Core/Core.cs
===================================================================
--- trunk/sources/HeuristicLab.Hive.Client.Core/Core.cs	(revision 1131)
+++ trunk/sources/HeuristicLab.Hive.Client.Core/Core.cs	(revision 1132)
@@ -46,4 +46,7 @@
 
 namespace HeuristicLab.Hive.Client.Core {
+  /// <summary>
+  /// The core component of the Hive Client
+  /// </summary>
   public class Core: MarshalByRefObject {
     public delegate string GetASnapshotDelegate();
@@ -59,5 +62,8 @@
     private WcfService wcfService;
     private Heartbeat beat;
-
+    
+    /// <summary>
+    /// Main Method for the client
+    /// </summary>
     public void Start() {
       Core.Locker = new Object();
@@ -70,5 +76,6 @@
       ConfigManager manager = ConfigManager.Instance;
       manager.Core = this;
-
+      
+      //Register all Wcf Service references
       wcfService = WcfService.Instance;
       wcfService.LoginCompleted += new EventHandler<LoginCompletedEventArgs>(wcfService_LoginCompleted);
@@ -78,13 +85,17 @@
       wcfService.ServerChanged += new EventHandler(wcfService_ServerChanged);
       wcfService.Connected += new EventHandler(wcfService_Connected);
-      ConnectionContainer cc = ConfigManager.Instance.GetServerIPAndPort();
+      //Recover Server IP and Port from the Settings Framework
+      ConnectionContainer cc = ConfigManager.Instance.GetServerIPAndPort();     
       if (cc.IPAdress != String.Empty && cc.Port != 0) {
         wcfService.Connect(cc.IPAdress, cc.Port);
       }
    
+      //Initialize the heartbeat
       beat = new Heartbeat { Interval = 10000 };
       beat.StartHeartbeat();     
 
       MessageQueue queue = MessageQueue.GetInstance();
+      
+      //Main processing loop
       while (!ShutdownFlag) {
         MessageContainer container = queue.GetMessage();
@@ -95,28 +106,37 @@
     }
 
+    /// <summary>
+    /// Reads and analyzes the Messages from the MessageQueue and starts corresponding actions
+    /// </summary>
+    /// <param name="container">The Container, containing the message</param>
     private void DetermineAction(MessageContainer container) {
       switch (container.Message) {
+        //Server requests to abort a job
         case MessageContainer.MessageType.AbortJob:
           engines[container.JobId].Abort();
           break;
+        //Job has been successfully aborted
         case MessageContainer.MessageType.JobAborted:
           Debug.WriteLine("-- Job Aborted Message received");
           break;
-
+        //Request a Snapshot from the Execution Engine
         case MessageContainer.MessageType.RequestSnapshot:
           engines[container.JobId].RequestSnapshot();
           break;
+        //Snapshot is ready and can be sent back to the Server
         case MessageContainer.MessageType.SnapshotReady:
           Thread ssr = new Thread(new ParameterizedThreadStart(GetSnapshot));
           ssr.Start(container.JobId);          
           break;
-
+        //Pull a Job from the Server
         case MessageContainer.MessageType.FetchJob: 
           wcfService.PullJobAsync(Guid.NewGuid());
           break;          
+        //A Job has finished and can be sent back to the server
         case MessageContainer.MessageType.FinishedJob:
           Thread finThread = new Thread(new ParameterizedThreadStart(GetFinishedJob));
           finThread.Start(container.JobId);          
           break;     
+        //Hard shutdown of the client
         case MessageContainer.MessageType.Shutdown:
           ShutdownFlag = true;
@@ -126,4 +146,5 @@
     }
 
+    //Asynchronous Threads for interaction with the Execution Engine
     #region Async Threads for the EE
     
@@ -146,4 +167,5 @@
     #endregion
 
+    //Eventhandlers for the communication with the wcf Layer 
     #region wcfService Events
 
Index: trunk/sources/HeuristicLab.Hive.Client.ExecutionEngine/Executor.cs
===================================================================
--- trunk/sources/HeuristicLab.Hive.Client.ExecutionEngine/Executor.cs	(revision 1131)
+++ trunk/sources/HeuristicLab.Hive.Client.ExecutionEngine/Executor.cs	(revision 1132)
@@ -53,7 +53,7 @@
     public void Start(byte[] serializedJob) {
       CreationTime = DateTime.Now;
-      //Job = (IJob)PersistenceManager.RestoreFromGZip(serializedJob);
+      Job = (IJob)PersistenceManager.RestoreFromGZip(serializedJob);
       //debug
-      Job = new TestJob();
+      //Job = new TestJob();
       Job.JobStopped += new EventHandler(Job_JobStopped);
       Job.Start();
