Index: /branches/thasling/DistributedGA/DistributedGA.ContactServer/ContactServiceImpl.cs
===================================================================
--- /branches/thasling/DistributedGA/DistributedGA.ContactServer/ContactServiceImpl.cs	(revision 14060)
+++ /branches/thasling/DistributedGA/DistributedGA.ContactServer/ContactServiceImpl.cs	(revision 14061)
@@ -63,5 +63,5 @@
         }
       }
-      catch (Exception ex) {
+      catch {
         //Nothing to do because maybe called from adderror
       }
Index: /branches/thasling/DistributedGA/DistributedGA.Core/Implementation/WcfPeerListManager.cs
===================================================================
--- /branches/thasling/DistributedGA/DistributedGA.Core/Implementation/WcfPeerListManager.cs	(revision 14060)
+++ /branches/thasling/DistributedGA/DistributedGA.Core/Implementation/WcfPeerListManager.cs	(revision 14061)
@@ -6,4 +6,5 @@
 using DistributedGA.Core.Interface;
 using System.Timers;
+using System.Threading.Tasks;
 
 namespace DistributedGA.Core.Implementation {
@@ -30,6 +31,8 @@
       cachedPeerList = new List<PeerInfo>();
       rand = new Random();
+      //Init
+      Task.Factory.StartNew(() => RefreshPeerList(this, null), TaskCreationOptions.LongRunning);
       //Start heartbeat timer
-      timer = new Timer(1000 * 20); //each 20 seconds
+      timer = new Timer(1000 * 10); //each 10 seconds
       timer.Elapsed += RefreshPeerList;
       timer.Start();
@@ -45,5 +48,5 @@
       using (var myChannelFactory = new ChannelFactory<IContactService>(binding, endpoint)) {
         using (IClientChannel client = (IClientChannel)myChannelFactory.CreateChannel()) {
-          ((IContactService)client).MakeLog(myself, msg);      
+          ((IContactService)client).MakeLog(myself, msg);
         }
       }
@@ -83,5 +86,5 @@
           using (var myChannelFactory = new ChannelFactory<IContactService>(binding, endpoint)) {
             using (IClientChannel client = (IClientChannel)myChannelFactory.CreateChannel()) {
-              allPeers = ((IContactService)client).GetPeerList(myself);            
+              allPeers = ((IContactService)client).GetPeerList(myself);
             }
           }
Index: /branches/thasling/DistributedGA/DistributedGA.Hive/P2PMigrationAnalyzer.cs
===================================================================
--- /branches/thasling/DistributedGA/DistributedGA.Hive/P2PMigrationAnalyzer.cs	(revision 14060)
+++ /branches/thasling/DistributedGA/DistributedGA.Hive/P2PMigrationAnalyzer.cs	(revision 14061)
@@ -56,12 +56,12 @@
       get { return (ILookupParameter<IntValue>)Parameters["MigrationIterations"]; }
     }
-    public ILookupParameter<PercentValue> MigrationRatesParameter {
-      get { return (ILookupParameter<PercentValue>)Parameters["MigrationRate"]; }
-    }
-    public ILookupParameter<PercentValue> CommunicationRatesParameter {
-      get { return (ILookupParameter<PercentValue>)Parameters["CommunicationRate"]; }
-    }
-    public ILookupParameter<IntValue> MessageCacheCapacityParameter {
-      get { return (ILookupParameter<IntValue>)Parameters["MessageCacheCapacity"]; }
+    public IValueParameter<PercentValue> MigrationRatesParameter {
+      get { return (IValueParameter<PercentValue>)Parameters["MigrationRate"]; }
+    }
+    public IValueParameter<PercentValue> CommunicationRatesParameter {
+      get { return (IValueParameter<PercentValue>)Parameters["CommunicationRate"]; }
+    }
+    public IValueParameter<IntValue> MessageCacheCapacityParameter {
+      get { return (IValueParameter<IntValue>)Parameters["MessageCacheCapacity"]; }
     }
     public ILookupParameter<IRandom> RandomParameter {
@@ -118,8 +118,4 @@
       Parameters.Add(new ValueParameter<StringValue>("ContactServerURL", "", new StringValue("net.tcp://10.42.1.150:9090/DistributedGA.ContactServer/ContactService")));
       Parameters.Add(new ValueParameter<StringValue>("JobGUID", "", new StringValue(Guid.NewGuid().ToString())));
-    //public ILookupParameter<StringValue> JobGuidParameter {
-    //  get { return (ILookupParameter<StringValue>)Parameters["JobGUID"]; }
-    //}
-
       Parameters.Add(new ValueParameter<ILog>("Log", "The log", new Log(1000)));
 
@@ -237,11 +233,10 @@
           List<KeyValuePair<PeerInfo, byte[]>> immigrants = new List<KeyValuePair<PeerInfo, byte[]>>();
           //limit number of immigrants to use
-          if(noOfEmigrants < message.Count)
-          {
+          if (noOfEmigrants < message.Count) {
             immigrants = message.Skip(Math.Max(0, message.Count() - noOfEmigrants)).ToList();
           } else {
             immigrants = message;
           }
-          
+
           // remove individuals from population to make place for immigrants
           for (int i = 0; i < immigrants.Count; i++) {
