diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/GlobalTimestamp.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/GlobalTimestamp.scala
index e1fb8a9e38c66d087128d9a97d65059a2818c15c..8d3691ac90eb3bb366c66c6529a7cefccf68a468 100644
--- a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/GlobalTimestamp.scala
+++ b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/GlobalTimestamp.scala
@@ -5,7 +5,7 @@
 package fr.univ_lille.cristal.emeraude.n2s3.core
 
 import fr.univ_lille.cristal.emeraude.n2s3.core.GlobalTypesAlias.Timestamp
-import fr.univ_lille.cristal.emeraude.n2s3.core.actors.Message
+import fr.univ_lille.cristal.emeraude.n2s3.support.actors.Message
 
 object GetGlobalTimestamp extends Message
 
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/NetworkContainer.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/NetworkContainer.scala
index 7778de53b14885f27c7b2631e607534e34d7ad2c..69788a29fd0e2cf258bf69965f4c4d0a1cae9097 100644
--- a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/NetworkContainer.scala
+++ b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/NetworkContainer.scala
@@ -5,8 +5,9 @@
 package fr.univ_lille.cristal.emeraude.n2s3.core
 
 import fr.univ_lille.cristal.emeraude.n2s3.core.actors.NetworkEntityActor.AddChildEntity
-import fr.univ_lille.cristal.emeraude.n2s3.core.actors.{Message, UnhandledMessageException}
+import fr.univ_lille.cristal.emeraude.n2s3.core.actors.UnhandledMessageException
 import fr.univ_lille.cristal.emeraude.n2s3.core.exceptions.DuplicatedChildException
+import fr.univ_lille.cristal.emeraude.n2s3.support.actors.Message
 
 import scala.collection.mutable
 
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/NetworkEntity.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/NetworkEntity.scala
index 2f2a50bd494779350ff16bfd10d34a4ca802c70d..5705be3280279442148091c08ccea97204f22b16 100644
--- a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/NetworkEntity.scala
+++ b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/NetworkEntity.scala
@@ -5,11 +5,11 @@
 
 package fr.univ_lille.cristal.emeraude.n2s3.core
 
-import akka.actor.{Actor, ActorRef}
-import akka.testkit.TestActorRef
+import akka.actor.ActorRef
 import fr.univ_lille.cristal.emeraude.n2s3.core.NetworkEntity.AskReference
-import fr.univ_lille.cristal.emeraude.n2s3.core.actors.{Done, Message, NetworkEntityActor, WrapMessage}
+import fr.univ_lille.cristal.emeraude.n2s3.core.actors.{Done, NetworkEntityActor, WrapMessage}
 import fr.univ_lille.cristal.emeraude.n2s3.core.exceptions.UnknownPathException
+import fr.univ_lille.cristal.emeraude.n2s3.support.actors.Message
 
 /**
   * NetworkEntity companion object
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/Neuron.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/Neuron.scala
index 9359f0b0d6140db318fb25250e706932a333ebbb..6826f6bc068669a3731eb1cfb3f886fa45592d44 100644
--- a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/Neuron.scala
+++ b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/Neuron.scala
@@ -6,12 +6,11 @@ package fr.univ_lille.cristal.emeraude.n2s3.core
 
 import fr.univ_lille.cristal.emeraude.n2s3.core.GlobalTypesAlias.Timestamp
 import fr.univ_lille.cristal.emeraude.n2s3.core.NetworkEntity.AskReference
-import fr.univ_lille.cristal.emeraude.n2s3.core.Neuron.NeuronEnds
 import fr.univ_lille.cristal.emeraude.n2s3.core.NeuronConnection.ConnectionEnds
 import fr.univ_lille.cristal.emeraude.n2s3.core.Synchronizer.SynchronizedMessage
-import fr.univ_lille.cristal.emeraude.n2s3.core.actors.{Done, Message, NetworkEntityActor, WrapMessage}
+import fr.univ_lille.cristal.emeraude.n2s3.core.actors.{Done, WrapMessage}
 import fr.univ_lille.cristal.emeraude.n2s3.core.event.{EventHolder, EventHolderMessage, NeuronFireEvent}
-import fr.univ_lille.cristal.emeraude.n2s3.models.qbg.QBGInhibitorConnection
+import fr.univ_lille.cristal.emeraude.n2s3.support.actors.Message
 
 import scala.collection.mutable
 import scala.language.postfixOps
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/NeuronConnection.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/NeuronConnection.scala
index 98f26ccd1ad9c79c7682fa8446c37e8b1524a932..c8e46d3613a4f2f473e28c8a42e6468764598265 100644
--- a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/NeuronConnection.scala
+++ b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/NeuronConnection.scala
@@ -7,7 +7,7 @@ package fr.univ_lille.cristal.emeraude.n2s3.core
 import fr.univ_lille.cristal.emeraude.n2s3.core.GlobalTypesAlias._
 import fr.univ_lille.cristal.emeraude.n2s3.core.Neuron.{Connection, NeuronEnds, NeuronMessage}
 import fr.univ_lille.cristal.emeraude.n2s3.core.NeuronConnection.ConnectionEnds
-import fr.univ_lille.cristal.emeraude.n2s3.core.actors.Message
+import fr.univ_lille.cristal.emeraude.n2s3.support.actors.Message
 
 /**
   * NeuronConnection Companion object
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/Path.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/Path.scala
index 1f169e508bb449b99d6fe250823fc8e6d091ad77..73bf4d15484a0403b8f0648ff6d352924bd7e9fa 100644
--- a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/Path.scala
+++ b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/Path.scala
@@ -6,8 +6,9 @@ package fr.univ_lille.cristal.emeraude.n2s3.core
 
 import akka.actor.ActorRef
 import akka.util.Timeout
-import fr.univ_lille.cristal.emeraude.n2s3.core.actors.{Config, Message, NetworkEntityActor}
+import fr.univ_lille.cristal.emeraude.n2s3.core.actors.{Config, NetworkEntityActor}
 import fr.univ_lille.cristal.emeraude.n2s3.core.actors.NetworkEntityActor.{ExplicitSenderRoutedMessage, ImplicitSenderRoutedMessage}
+import fr.univ_lille.cristal.emeraude.n2s3.support.actors.Message
 
 import scala.concurrent.{Await, Future}
 
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/Property.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/Property.scala
index ca615b65b1719b2fd17c565c77296f6dc2290f29..f08b2027ee4bcd2ce29517f370f8f2788348faa4 100644
--- a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/Property.scala
+++ b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/Property.scala
@@ -7,7 +7,7 @@ package fr.univ_lille.cristal.emeraude.n2s3.core
 
 import akka.actor._
 import fr.univ_lille.cristal.emeraude.n2s3.core.Neuron.InputConnection
-import fr.univ_lille.cristal.emeraude.n2s3.core.actors.Message
+import fr.univ_lille.cristal.emeraude.n2s3.support.actors.Message
 import squants.electro.ElectricPotential
 
 import scala.collection.mutable
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/Synchronizer.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/Synchronizer.scala
index 88f96f62e9e263324dd654cc62304867e80fa137..73f812daa815768052ed011566e4d628e2b32121 100644
--- a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/Synchronizer.scala
+++ b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/Synchronizer.scala
@@ -9,7 +9,7 @@ import fr.univ_lille.cristal.emeraude.n2s3.core
 import fr.univ_lille.cristal.emeraude.n2s3.core.GlobalTypesAlias._
 import fr.univ_lille.cristal.emeraude.n2s3.core.actors._
 import fr.univ_lille.cristal.emeraude.n2s3.core.event.{Event, EventHolder, EventTriggered}
-import fr.univ_lille.cristal.emeraude.n2s3.support.actors.{ActorCompanion, PropsBuilder}
+import fr.univ_lille.cristal.emeraude.n2s3.support.actors.{ActorCompanion, Message, PropsBuilder}
 
 /**
   * Synchronizer companion object
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/actors/Initialize.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/actors/Initialize.scala
deleted file mode 100644
index 422aed91d7394d76f6de6b8fbc0b4f2c2825637a..0000000000000000000000000000000000000000
--- a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/actors/Initialize.scala
+++ /dev/null
@@ -1,6 +0,0 @@
-package fr.univ_lille.cristal.emeraude.n2s3.core.actors
-
-/***********************************************************************************************
- *  Message send for ask an actor to initiate itself
- **********************************************************************************************/
-object Initialize extends Message
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/actors/InputLayer.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/actors/InputLayer.scala
index abce5c122b01796744adad863f991995155a5064..84e38e1e6ae391d5fe343d1d774e3c5208d34671 100644
--- a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/actors/InputLayer.scala
+++ b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/actors/InputLayer.scala
@@ -6,6 +6,7 @@ import fr.univ_lille.cristal.emeraude.n2s3.core.Synchronizer.{AskInput, CleanQue
 import fr.univ_lille.cristal.emeraude.n2s3.core._
 import fr.univ_lille.cristal.emeraude.n2s3.core.event.{EventHolder, EventHolderMessage, LabelChangeEvent, LabelChangeResponse}
 import fr.univ_lille.cristal.emeraude.n2s3.features.io.input.StreamSupport
+import fr.univ_lille.cristal.emeraude.n2s3.support.actors.Message
 import fr.univ_lille.cristal.emeraude.n2s3.support.io._
 
 import scala.annotation.tailrec
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/actors/InputNeuron.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/actors/InputNeuron.scala
index f09d399da45b8b15b71a6ab9f6982dbd9745f836..5ff7d4400cf6f8ca059b7339a9537c1a62ffef1f 100644
--- a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/actors/InputNeuron.scala
+++ b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/actors/InputNeuron.scala
@@ -5,6 +5,7 @@ import fr.univ_lille.cristal.emeraude.n2s3.core.Neuron.NeuronEnds
 import fr.univ_lille.cristal.emeraude.n2s3.core.event.{NeuronFireEvent, NeuronFireResponse}
 import fr.univ_lille.cristal.emeraude.n2s3.core.Neuron
 import fr.univ_lille.cristal.emeraude.n2s3.core.models.properties.SynapticWeightFloat
+import fr.univ_lille.cristal.emeraude.n2s3.support.actors.Message
 
 /**
   * Created by guille on 10/14/16.
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/actors/NetworkEntityActor.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/actors/NetworkEntityActor.scala
index 9f0e79f587260577966bf2abd5f532b29981329b..ecc8a55c9c4532763ec1b8ab4df62c5a9c6c7ee3 100644
--- a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/actors/NetworkEntityActor.scala
+++ b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/actors/NetworkEntityActor.scala
@@ -9,7 +9,7 @@ import fr.univ_lille.cristal.emeraude.n2s3.core._
 import fr.univ_lille.cristal.emeraude.n2s3.core.actors.NetworkEntityActor.{ExplicitSenderRoutedMessage, ImplicitSenderRoutedMessage}
 import fr.univ_lille.cristal.emeraude.n2s3.core.exceptions.{UnknownDestinationException, UnknownPathException}
 import fr.univ_lille.cristal.emeraude.n2s3.support.actors
-import fr.univ_lille.cristal.emeraude.n2s3.support.actors.{ActorCompanion, PropsBuilder, SinglePropsBuilder}
+import fr.univ_lille.cristal.emeraude.n2s3.support.actors.{ActorCompanion, Message, PropsBuilder, SinglePropsBuilder}
 
 import scala.collection.mutable
 
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/actors/ResetInput.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/actors/ResetInput.scala
index 82bb0c2c4a0622b2cdb5265fe14bd548b34d698b..85b9942bf04cc3367561e14716afdfb20b655182 100644
--- a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/actors/ResetInput.scala
+++ b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/actors/ResetInput.scala
@@ -1,5 +1,7 @@
 package fr.univ_lille.cristal.emeraude.n2s3.core.actors
 
+import fr.univ_lille.cristal.emeraude.n2s3.support.actors.Message
+
 /**
   * Created by guille on 10/14/16.
   */
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/actors/ReturnCurrentTime.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/actors/ReturnCurrentTime.scala
index 5506c3109e7291f7d9b3e84f55903c619145f7ec..da651e0ceb5a588290552ac642cec2e847be061f 100644
--- a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/actors/ReturnCurrentTime.scala
+++ b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/actors/ReturnCurrentTime.scala
@@ -1,6 +1,7 @@
 package fr.univ_lille.cristal.emeraude.n2s3.core.actors
 
 import fr.univ_lille.cristal.emeraude.n2s3.core.GlobalTypesAlias._
+import fr.univ_lille.cristal.emeraude.n2s3.support.actors.Message
 
 /**
   * Created by guille on 10/14/16.
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/actors/SaveInFile.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/actors/SaveInFile.scala
index 180eb75197c880fec3be8b6c251f1842ae6b00c1..5386d288359bbf833b0e6e6c1a1b916bbe89ce84 100644
--- a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/actors/SaveInFile.scala
+++ b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/actors/SaveInFile.scala
@@ -1,5 +1,7 @@
 package fr.univ_lille.cristal.emeraude.n2s3.core.actors
 
+import fr.univ_lille.cristal.emeraude.n2s3.support.actors.Message
+
 /**
   * Created by guille on 10/14/16.
   */
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/actors/SetInput.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/actors/SetInput.scala
index d8c13e13472207f89683c0155bfb8adf4335cf85..8414da917f1961427a69fc599738dd345017542c 100644
--- a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/actors/SetInput.scala
+++ b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/actors/SetInput.scala
@@ -1,6 +1,7 @@
 package fr.univ_lille.cristal.emeraude.n2s3.core.actors
 
 import fr.univ_lille.cristal.emeraude.n2s3.core.NetworkEntityPath
+import fr.univ_lille.cristal.emeraude.n2s3.support.actors.Message
 
 /** Set the current actor input generator to the synchronizer of inputs */
 case class SetInput(path : NetworkEntityPath) extends Message
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/actors/SetInputStream.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/actors/SetInputStream.scala
index 3a1f271853ae6352fc139b49d8734570e530514c..88261142e8887e10fd9597b32061a2b482c9a3c8 100644
--- a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/actors/SetInputStream.scala
+++ b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/actors/SetInputStream.scala
@@ -1,6 +1,7 @@
 package fr.univ_lille.cristal.emeraude.n2s3.core.actors
 
 import fr.univ_lille.cristal.emeraude.n2s3.features.io.input.StreamSupport
+import fr.univ_lille.cristal.emeraude.n2s3.support.actors.Message
 import fr.univ_lille.cristal.emeraude.n2s3.support.io.{Input, InputSeq, N2S3Input}
 
 /** ******************************************************************************************************************
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/actors/Spike.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/actors/Spike.scala
index f19cdb5eab2f64d49fe16e4399cece474b972cb8..4eeeda37be8787019b0815e63c4c4d13dd5e6546 100644
--- a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/actors/Spike.scala
+++ b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/actors/Spike.scala
@@ -1,5 +1,7 @@
 package fr.univ_lille.cristal.emeraude.n2s3.core.actors
 
+import fr.univ_lille.cristal.emeraude.n2s3.support.actors.Message
+
 /***********************************************************************************************
  * 	Basic class for all spike message type
  **********************************************************************************************/
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/actors/SyncMessage.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/actors/SyncMessage.scala
index 590064e8ec232e9352a120f9d58619d666a4ec70..9f510bf349a8b2b8e81616e5a8f772dac34e3588 100644
--- a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/actors/SyncMessage.scala
+++ b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/actors/SyncMessage.scala
@@ -1,5 +1,7 @@
 package fr.univ_lille.cristal.emeraude.n2s3.core.actors
 
+import fr.univ_lille.cristal.emeraude.n2s3.support.actors.Message
+
 /*************************************************************************************************
 *>>>>>>> a2debf0a5ca3792a035f19095d06369a403808c7
  * Base class for all the synchronization mechanism.
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/actors/UnhandledMessageException.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/actors/UnhandledMessageException.scala
index c4fe8d869fcbcb86aad6ce016a6fff363dc97a28..d27cc54c3b4d36fd8da40d45967bdbe15d8a797a 100644
--- a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/actors/UnhandledMessageException.scala
+++ b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/actors/UnhandledMessageException.scala
@@ -1,5 +1,7 @@
 package fr.univ_lille.cristal.emeraude.n2s3.core.actors
 
+import fr.univ_lille.cristal.emeraude.n2s3.support.actors.Message
+
 /**
   * Created by guille on 10/14/16.
   */
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/actors/WiringMessage.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/actors/WiringMessage.scala
index f5f8eec959176853ae9a7cef3d607114f2de164a..3a61e17ac2dedd199f52edf21623c6e804abaee5 100644
--- a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/actors/WiringMessage.scala
+++ b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/actors/WiringMessage.scala
@@ -1,5 +1,7 @@
 package fr.univ_lille.cristal.emeraude.n2s3.core.actors
 
+import fr.univ_lille.cristal.emeraude.n2s3.support.actors.Message
+
 /*************************************************************************************************
  * Base class for all the messages that connect the neurones and synapses together.
  ************************************************************************************************/
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/actors/WrapMessage.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/actors/WrapMessage.scala
index 6897d76619aff55fdee24321024470312ab9cd38..92373327043da0fb556840d3038a99ddad6e4810 100644
--- a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/actors/WrapMessage.scala
+++ b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/actors/WrapMessage.scala
@@ -1,5 +1,7 @@
 package fr.univ_lille.cristal.emeraude.n2s3.core.actors
 
+import fr.univ_lille.cristal.emeraude.n2s3.support.actors.Message
+
 /**
   * Created by guille on 10/14/16.
   */
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/event/EventHolderMessage.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/event/EventHolderMessage.scala
index 0b53a860e66a884ee38cca0be22b674f03df76d7..60b650d84c9ed320d88f23d5baaf342f166d0436 100644
--- a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/event/EventHolderMessage.scala
+++ b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/event/EventHolderMessage.scala
@@ -1,6 +1,6 @@
 package fr.univ_lille.cristal.emeraude.n2s3.core.event
 
-import fr.univ_lille.cristal.emeraude.n2s3.core.actors.Message
+import fr.univ_lille.cristal.emeraude.n2s3.support.actors.Message
 
 /***********************************************************************************************
  * 														SUBSCRIBE AND UNSUBSCRIBE MESSAGES
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/event/EventResponse.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/event/EventResponse.scala
index 88f1114572002581bc752569502b48a2ca57dea6..2a1d0800f4f8cd1707f2cb642aca5b9b6be1f5f7 100644
--- a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/event/EventResponse.scala
+++ b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/event/EventResponse.scala
@@ -1,6 +1,6 @@
 package fr.univ_lille.cristal.emeraude.n2s3.core.event
 
-import fr.univ_lille.cristal.emeraude.n2s3.core.actors.Message
+import fr.univ_lille.cristal.emeraude.n2s3.support.actors.Message
 
 /*********************************************************************************************************
  * List of event which can be trigger by neuron
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/event/SynchronizedEvent.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/event/SynchronizedEvent.scala
index c8908fd74080b26036cb90d6cf8e8a8bb54dcf56..0415dffe0efd4bdc6a9e4a951669e0586d252715 100644
--- a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/event/SynchronizedEvent.scala
+++ b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/event/SynchronizedEvent.scala
@@ -2,8 +2,8 @@ package fr.univ_lille.cristal.emeraude.n2s3.core.event
 
 import fr.univ_lille.cristal.emeraude.n2s3.core.GlobalTypesAlias.Timestamp
 import fr.univ_lille.cristal.emeraude.n2s3.core.Synchronizer.SynchronizedMessage
-import fr.univ_lille.cristal.emeraude.n2s3.core.actors.Message
 import fr.univ_lille.cristal.emeraude.n2s3.core.{NetworkEntityPath, NetworkEntityReference}
+import fr.univ_lille.cristal.emeraude.n2s3.support.actors.Message
 
 /**
   * Created by guille on 10/20/16.
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/exceptions/UnknownDestinationException.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/exceptions/UnknownDestinationException.scala
index b5dc2d85539741d7c1e2f727ebb8f716c4a551db..b71cf8d5d9c9cea942f9f9b92352f175dceedb4e 100644
--- a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/exceptions/UnknownDestinationException.scala
+++ b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/exceptions/UnknownDestinationException.scala
@@ -1,7 +1,7 @@
 package fr.univ_lille.cristal.emeraude.n2s3.core.exceptions
 
 import fr.univ_lille.cristal.emeraude.n2s3.core.NetworkEntityPath
-import fr.univ_lille.cristal.emeraude.n2s3.core.actors.Message
+import fr.univ_lille.cristal.emeraude.n2s3.support.actors.Message
 
 /**
   * Created by falezp on 02/06/16.
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/builder/N2S3.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/builder/N2S3.scala
index dbf5d8e3f4d8188382330086c9e7c5afafe160af..e9a603d335cb618d9e48082b15585b8a6bf39da1 100644
--- a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/builder/N2S3.scala
+++ b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/builder/N2S3.scala
@@ -1,16 +1,16 @@
 package fr.univ_lille.cristal.emeraude.n2s3.features.builder
 
-import akka.actor.{ActorRef, ActorSystem, Props}
+import akka.actor.{ActorRef, ActorSystem}
 import akka.util.Timeout
 import com.typesafe.config.ConfigFactory
 import fr.univ_lille.cristal.emeraude.n2s3.core.Synchronizer.{Start, WaitEndOfActivity}
 import fr.univ_lille.cristal.emeraude.n2s3.core._
-import fr.univ_lille.cristal.emeraude.n2s3.core.actors.{Config, Message, SetInput}
+import fr.univ_lille.cristal.emeraude.n2s3.core.actors.{Config, SetInput}
 import fr.univ_lille.cristal.emeraude.n2s3.core.exceptions.N2S3Exception
-import fr.univ_lille.cristal.emeraude.n2s3.features.io.input.{N2S3InputStream, StreamSupport}
+import fr.univ_lille.cristal.emeraude.n2s3.features.io.input.StreamSupport
 import fr.univ_lille.cristal.emeraude.n2s3.features.io.report.BenchmarkMonitorRef
 import fr.univ_lille.cristal.emeraude.n2s3.features.logging.graph.SynapsesWeightGraphBuilderRef
-import fr.univ_lille.cristal.emeraude.n2s3.support.actors._
+import fr.univ_lille.cristal.emeraude.n2s3.support.actors.{Message, _}
 import fr.univ_lille.cristal.emeraude.n2s3.support.io.{Input, InputSeq, N2S3Input}
 
 /**
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/builder/N2S3ActorRef.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/builder/N2S3ActorRef.scala
index c18a0549c4749fc5e8f7a438f07dbec41b49684e..0b59715619be99cce0115d3b9262535cc125fdec 100644
--- a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/builder/N2S3ActorRef.scala
+++ b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/builder/N2S3ActorRef.scala
@@ -1,6 +1,6 @@
 package fr.univ_lille.cristal.emeraude.n2s3.features.builder
-import fr.univ_lille.cristal.emeraude.n2s3.core.actors.Message
 import fr.univ_lille.cristal.emeraude.n2s3.core.{ExternalSender, NetworkEntityPath}
+import fr.univ_lille.cristal.emeraude.n2s3.support.actors.Message
 
 /**
   * Created by guille on 8/4/16.
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/builder/SynchronizedNeuronRef.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/builder/SynchronizedNeuronRef.scala
index 38bb21281624402b14fef1893cb14d155aae0352..0c9f4ca3b298ed96702470d2928e871f25431adb 100644
--- a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/builder/SynchronizedNeuronRef.scala
+++ b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/builder/SynchronizedNeuronRef.scala
@@ -3,7 +3,7 @@ package fr.univ_lille.cristal.emeraude.n2s3.features.builder
 import akka.actor.ActorRef
 import fr.univ_lille.cristal.emeraude.n2s3.core.Neuron.NeuronMessage
 import fr.univ_lille.cristal.emeraude.n2s3.core._
-import fr.univ_lille.cristal.emeraude.n2s3.core.actors.Message
+import fr.univ_lille.cristal.emeraude.n2s3.support.actors.Message
 
 /**
   * Created by guille on 8/5/16.
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/io/report/BenchmarkMonitor.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/io/report/BenchmarkMonitor.scala
index 3e468684947d3ee6c93f6040521232df7b9e44b8..0cd752c79568a7d34c9facbd8f5108454045c614 100644
--- a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/io/report/BenchmarkMonitor.scala
+++ b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/io/report/BenchmarkMonitor.scala
@@ -9,12 +9,18 @@ import java.io.{File, PrintWriter}
 import akka.actor.Actor
 import fr.univ_lille.cristal.emeraude.n2s3.core.GlobalTypesAlias._
 import fr.univ_lille.cristal.emeraude.n2s3.core._
-import fr.univ_lille.cristal.emeraude.n2s3.core.actors.{Done, Initialize, Message}
+import fr.univ_lille.cristal.emeraude.n2s3.core.actors.Done
 import fr.univ_lille.cristal.emeraude.n2s3.core.event._
+import fr.univ_lille.cristal.emeraude.n2s3.support.actors.Message
 
 import scala.collection.mutable
 
+/**
+  * BenchmarkMonitor messages
+  */
 case class GetResult() extends Message
+object Initialize extends Message
+
 
 
 class InputCrossInfo(val label : String , val startTime : Timestamp, val endTime : Timestamp) {
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/learning/SpikeCounter.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/learning/SpikeCounter.scala
index 3c9ac1c8028a2e92b1427f0cbeced6a9a6e8b04f..9a0907c08b594e0a01c4ce1f12a1f983e752de68 100644
--- a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/learning/SpikeCounter.scala
+++ b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/learning/SpikeCounter.scala
@@ -2,8 +2,9 @@ package fr.univ_lille.cristal.emeraude.n2s3.features.learning
 
 import akka.actor.Actor
 import fr.univ_lille.cristal.emeraude.n2s3.core._
-import fr.univ_lille.cristal.emeraude.n2s3.core.actors.{Message, WrapMessage}
+import fr.univ_lille.cristal.emeraude.n2s3.core.actors.WrapMessage
 import fr.univ_lille.cristal.emeraude.n2s3.core.event.{NeuronFireEvent, NeuronFireResponse, Subscribe}
+import fr.univ_lille.cristal.emeraude.n2s3.support.actors.Message
 
 import scala.collection.mutable
 /**
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/learning/SupervisedSTDPLearning.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/learning/SupervisedSTDPLearning.scala
index d129a1d1b68782e5722137b3c43a4f2ea1afccdd..65fbc3fdeff1a16044300227c0744a4efb922d05 100644
--- a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/learning/SupervisedSTDPLearning.scala
+++ b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/learning/SupervisedSTDPLearning.scala
@@ -1,14 +1,14 @@
 package fr.univ_lille.cristal.emeraude.n2s3.features.learning
 
-import akka.actor.Actor.Receive
-import akka.actor.{Actor, ActorRef}
+import akka.actor.Actor
 import fr.univ_lille.cristal.emeraude.n2s3.core.GlobalTypesAlias.Timestamp
 import fr.univ_lille.cristal.emeraude.n2s3.core.NetworkEntity.AskReference
 import fr.univ_lille.cristal.emeraude.n2s3.core.Neuron.NeuronMessage
 import fr.univ_lille.cristal.emeraude.n2s3.core._
-import fr.univ_lille.cristal.emeraude.n2s3.core.actors.{Done, Message, WrapMessage}
+import fr.univ_lille.cristal.emeraude.n2s3.core.actors.{Done, WrapMessage}
 import fr.univ_lille.cristal.emeraude.n2s3.core.event.{LabelChangeEvent, LabelChangeResponse, SubscribeSynchronized, SynchronizedEvent}
 import fr.univ_lille.cristal.emeraude.n2s3.features.builder.N2S3
+import fr.univ_lille.cristal.emeraude.n2s3.support.actors.Message
 
 /**
   * Created by falezp on 14/10/16.
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/models/bio/LIFNeuron.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/models/bio/LIFNeuron.scala
index 6491d5c82637e34d3e847e0fcbe948015f5d2047..be41636330e8931ad0bd650ea1732be0ab812b30 100644
--- a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/models/bio/LIFNeuron.scala
+++ b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/models/bio/LIFNeuron.scala
@@ -5,12 +5,13 @@ import fr.univ_lille.cristal.emeraude.n2s3.core.GlobalTypesAlias._
 import fr.univ_lille.cristal.emeraude.n2s3.core.Neuron.{Inhibition, NeuronEnds}
 import fr.univ_lille.cristal.emeraude.n2s3.core._
 import fr.univ_lille.cristal.emeraude.n2s3.core.UnitCast._
-import fr.univ_lille.cristal.emeraude.n2s3.core.actors.{Message, ShapelessSpike, WeightedSpike}
+import fr.univ_lille.cristal.emeraude.n2s3.core.actors.{ShapelessSpike, WeightedSpike}
 import fr.univ_lille.cristal.emeraude.n2s3.core.event.{NeuronFireEvent, NeuronFireResponse}
 import fr.univ_lille.cristal.emeraude.n2s3.core.models.properties._
 import fr.univ_lille.cristal.emeraude.n2s3.core.models.synapse.FloatSynapse
 import fr.univ_lille.cristal.emeraude.n2s3.features.learning.{LTDUntil, LTPUntil}
 import fr.univ_lille.cristal.emeraude.n2s3.models.qbg._
+import fr.univ_lille.cristal.emeraude.n2s3.support.actors.Message
 
 import scala.collection.mutable
 import scala.math._
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/models/bio/SRM2Neuron.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/models/bio/SRM2Neuron.scala
index 6dda95d6d539f3bc341fe4fed1e2c07a3650487c..213672bb4a908f303aa5f6ddc684e5e9b06068dd 100644
--- a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/models/bio/SRM2Neuron.scala
+++ b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/models/bio/SRM2Neuron.scala
@@ -4,11 +4,12 @@ import fr.univ_lille.cristal.emeraude.n2s3.core
 import fr.univ_lille.cristal.emeraude.n2s3.core.GlobalTypesAlias.Timestamp
 import fr.univ_lille.cristal.emeraude.n2s3.core.Neuron.{NeuronEnds, NeuronMessage}
 import fr.univ_lille.cristal.emeraude.n2s3.core._
-import fr.univ_lille.cristal.emeraude.n2s3.core.actors.{Message, ShapelessSpike, WeightedSpike}
+import fr.univ_lille.cristal.emeraude.n2s3.core.actors.{ShapelessSpike, WeightedSpike}
 import fr.univ_lille.cristal.emeraude.n2s3.core.UnitCast._
 import fr.univ_lille.cristal.emeraude.n2s3.core.event.{NeuronFireEvent, NeuronFireResponse}
 import fr.univ_lille.cristal.emeraude.n2s3.core.models.properties.{MembraneThresholdFloat, SynapticWeightFloat}
 import fr.univ_lille.cristal.emeraude.n2s3.core.models.synapse.FloatSynapse
+import fr.univ_lille.cristal.emeraude.n2s3.support.actors.Message
 
 import scala.collection.mutable
 
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/models/bio/SRMNeuron.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/models/bio/SRMNeuron.scala
index d67994816cbe362a4a272cb745920eaa99899d55..395ddcf9703ed33282b4e1033ebd13080ac1dc42 100644
--- a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/models/bio/SRMNeuron.scala
+++ b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/models/bio/SRMNeuron.scala
@@ -5,11 +5,12 @@ import fr.univ_lille.cristal.emeraude.n2s3.core.GlobalTypesAlias._
 import fr.univ_lille.cristal.emeraude.n2s3.core.Neuron.{Inhibition, NeuronEnds}
 import fr.univ_lille.cristal.emeraude.n2s3.core._
 import fr.univ_lille.cristal.emeraude.n2s3.core.UnitCast._
-import fr.univ_lille.cristal.emeraude.n2s3.core.actors.{Message, ShapelessSpike, WeightedSpike}
+import fr.univ_lille.cristal.emeraude.n2s3.core.actors.{ShapelessSpike, WeightedSpike}
 import fr.univ_lille.cristal.emeraude.n2s3.core.event.{NeuronFireEvent, NeuronFireResponse}
 import fr.univ_lille.cristal.emeraude.n2s3.core.models.properties.{MembraneThresholdFloat, MembraneThresholdType, MembraneThresholdTypeEnum, SynapticWeightFloat}
 import fr.univ_lille.cristal.emeraude.n2s3.core.models.synapse.FloatSynapse
 import fr.univ_lille.cristal.emeraude.n2s3.models.qbg._
+import fr.univ_lille.cristal.emeraude.n2s3.support.actors.Message
 
 import scala.collection.mutable
 import scala.math._
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/models/bio/Synapse.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/models/bio/Synapse.scala
index 94edae46bb5d23c7bcbf90dc71503ebb2ea4a35d..bf0af6c66b7f175e36e1676d75182ab6d586900f 100644
--- a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/models/bio/Synapse.scala
+++ b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/models/bio/Synapse.scala
@@ -6,7 +6,8 @@ import fr.univ_lille.cristal.emeraude.n2s3.core.models.synapse.FloatSynapse
 import fr.univ_lille.cristal.emeraude.n2s3.core.{NeuronConnection, Time}
 import fr.univ_lille.cristal.emeraude.n2s3.core.NeuronConnection.ConnectionEnds
 import fr.univ_lille.cristal.emeraude.n2s3.core.UnitCast._
-import fr.univ_lille.cristal.emeraude.n2s3.core.actors.{Message, ShapelessSpike, WeightedSpike}
+import fr.univ_lille.cristal.emeraude.n2s3.core.actors.{ShapelessSpike, WeightedSpike}
+import fr.univ_lille.cristal.emeraude.n2s3.support.actors.Message
 
 import scala.util.Random
 
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/models/integrate_and_fire/IntegrateAndFireNeuron.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/models/integrate_and_fire/IntegrateAndFireNeuron.scala
index 26786ff94b2774123d47f4c5251305922fd55db1..dc66342cc5a9b9f333c3e82557a336e9de6dcf82 100644
--- a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/models/integrate_and_fire/IntegrateAndFireNeuron.scala
+++ b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/models/integrate_and_fire/IntegrateAndFireNeuron.scala
@@ -3,8 +3,8 @@ package fr.univ_lille.cristal.emeraude.n2s3.models.integrate_and_fire
 import fr.univ_lille.cristal.emeraude.n2s3.core.GlobalTypesAlias._
 import fr.univ_lille.cristal.emeraude.n2s3.core.Neuron.NeuronEnds
 import fr.univ_lille.cristal.emeraude.n2s3.core._
-import fr.univ_lille.cristal.emeraude.n2s3.core.actors.Message
 import fr.univ_lille.cristal.emeraude.n2s3.core.event.{NeuronFireEvent, NeuronFireResponse}
+import fr.univ_lille.cristal.emeraude.n2s3.support.actors.Message
 
 /**
   * Created by falezp on 03/06/16.
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/models/izhikevich/Neuron.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/models/izhikevich/Neuron.scala
index 7bb4bdd4ead39400c9598a95dda79e4ea9e8a9dd..a99ff9ca50988c834b25758e543a0c7ff3642a5b 100644
--- a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/models/izhikevich/Neuron.scala
+++ b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/models/izhikevich/Neuron.scala
@@ -6,14 +6,14 @@ package fr.univ_lille.cristal.emeraude.n2s3.models.izhikevich
 
 import fr.univ_lille.cristal.emeraude.n2s3.core
 import fr.univ_lille.cristal.emeraude.n2s3.core.GlobalTypesAlias.Timestamp
-import fr.univ_lille.cristal.emeraude.n2s3.core._
 import fr.univ_lille.cristal.emeraude.n2s3.core.Neuron.{Inhibition, NeuronEnds}
-import fr.univ_lille.cristal.emeraude.n2s3.core.models.synapse.FloatSynapse
-import fr.univ_lille.cristal.emeraude.n2s3.models.qbg.{BackwardSpike, QBGNeuronConnection}
-import fr.univ_lille.cristal.emeraude.n2s3.core.UnitCast._
-import fr.univ_lille.cristal.emeraude.n2s3.core.actors.{Message, ShapelessSpike, WeightedSpike}
+import fr.univ_lille.cristal.emeraude.n2s3.core._
+import fr.univ_lille.cristal.emeraude.n2s3.core.actors.{ShapelessSpike, WeightedSpike}
 import fr.univ_lille.cristal.emeraude.n2s3.core.event.{NeuronFireEvent, NeuronFireResponse}
 import fr.univ_lille.cristal.emeraude.n2s3.core.models.properties.SynapticWeightFloat
+import fr.univ_lille.cristal.emeraude.n2s3.core.models.synapse.FloatSynapse
+import fr.univ_lille.cristal.emeraude.n2s3.models.qbg.{BackwardSpike, QBGNeuronConnection}
+import fr.univ_lille.cristal.emeraude.n2s3.support.actors.Message
 
 import scala.util.Random
 
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/models/izhikevich/Synapse.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/models/izhikevich/Synapse.scala
index 3ec65102c3503b19fd8fb1ef4c4915acddea7902..6e67fa204e51bb489df1fbde963dc92c640760ba 100644
--- a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/models/izhikevich/Synapse.scala
+++ b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/models/izhikevich/Synapse.scala
@@ -6,8 +6,9 @@ package fr.univ_lille.cristal.emeraude.n2s3.models.izhikevich
 
 import fr.univ_lille.cristal.emeraude.n2s3.core.GlobalTypesAlias._
 import fr.univ_lille.cristal.emeraude.n2s3.core.NeuronConnection.ConnectionEnds
-import fr.univ_lille.cristal.emeraude.n2s3.core.actors.{Message, ShapelessSpike, WeightedSpike}
+import fr.univ_lille.cristal.emeraude.n2s3.core.actors.{ShapelessSpike, WeightedSpike}
 import fr.univ_lille.cristal.emeraude.n2s3.core.NeuronConnection
+import fr.univ_lille.cristal.emeraude.n2s3.support.actors.Message
 
 import scala.util.Random
 
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/models/qbg/QBGNeuron.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/models/qbg/QBGNeuron.scala
index 864e59d916f5b371eda51da0332cf7f9db9bdefc..fb936a7470bcdcc9ffbda528152b1b5fc8777ac0 100644
--- a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/models/qbg/QBGNeuron.scala
+++ b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/models/qbg/QBGNeuron.scala
@@ -8,10 +8,11 @@ import fr.univ_lille.cristal.emeraude.n2s3.core.GlobalTypesAlias._
 import fr.univ_lille.cristal.emeraude.n2s3.core.Neuron.{Inhibition, NeuronEnds}
 import fr.univ_lille.cristal.emeraude.n2s3.core.UnitCast._
 import fr.univ_lille.cristal.emeraude.n2s3.core._
-import fr.univ_lille.cristal.emeraude.n2s3.core.actors.{Message, NetworkEntityActor, ShapelessSpike, WeightedSpike}
+import fr.univ_lille.cristal.emeraude.n2s3.core.actors.{NetworkEntityActor, ShapelessSpike, WeightedSpike}
 import fr.univ_lille.cristal.emeraude.n2s3.core.event.{NeuronFireEvent, NeuronFireResponse}
 import fr.univ_lille.cristal.emeraude.n2s3.core.models.properties.{MembraneThresholdTypeEnum, _}
 import fr.univ_lille.cristal.emeraude.n2s3.core.models.synapse.FloatSynapse
+import fr.univ_lille.cristal.emeraude.n2s3.support.actors.Message
 import squants.electro.ElectricPotential
 import squants.electro.ElectricPotentialConversions.ElectricPotentialConversions
 
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/models/qbg/QBGSynapse.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/models/qbg/QBGSynapse.scala
index a1bb2c95e1fa3a08ff49417df5e8f22a62af9a13..9359b274035270e9dbce2b992397343eb14fb7d3 100644
--- a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/models/qbg/QBGSynapse.scala
+++ b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/models/qbg/QBGSynapse.scala
@@ -9,7 +9,8 @@ import fr.univ_lille.cristal.emeraude.n2s3.core.Neuron.Inhibition
 import fr.univ_lille.cristal.emeraude.n2s3.core.NeuronConnection.ConnectionEnds
 import fr.univ_lille.cristal.emeraude.n2s3.core.models.synapse.FloatSynapse
 import fr.univ_lille.cristal.emeraude.n2s3.core._
-import fr.univ_lille.cristal.emeraude.n2s3.core.actors.{Message, ShapelessSpike, WeightedSpike}
+import fr.univ_lille.cristal.emeraude.n2s3.core.actors.{ShapelessSpike, WeightedSpike}
+import fr.univ_lille.cristal.emeraude.n2s3.support.actors.Message
 
 import scala.util.Random
 
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/models/qbg/SharedConnection.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/models/qbg/SharedConnection.scala
index 10b37e53b9d12f61ce21c95948a3351e3ce98a40..de6b3ceb9514c448a1eb035a9265f3f12a9ff211 100644
--- a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/models/qbg/SharedConnection.scala
+++ b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/models/qbg/SharedConnection.scala
@@ -6,8 +6,9 @@ package fr.univ_lille.cristal.emeraude.n2s3.models.qbg
 
 import fr.univ_lille.cristal.emeraude.n2s3.core.GlobalTypesAlias._
 import fr.univ_lille.cristal.emeraude.n2s3.core.NeuronConnection.ConnectionEnds
-import fr.univ_lille.cristal.emeraude.n2s3.core.actors.{Message, ShapelessSpike, WeightedSpike}
+import fr.univ_lille.cristal.emeraude.n2s3.core.actors.{ShapelessSpike, WeightedSpike}
 import fr.univ_lille.cristal.emeraude.n2s3.core.models.convolutional.SharedNeuronConnection
+import fr.univ_lille.cristal.emeraude.n2s3.support.actors.Message
 
 import scala.util.Random
 
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/models/ternary_synapse/Neuron.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/models/ternary_synapse/Neuron.scala
index 95d414a735aba5dca3843bb2784c7309c01ea1a4..c8cf295538d7bd444ce60e954e8842a7af4e3d81 100644
--- a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/models/ternary_synapse/Neuron.scala
+++ b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/models/ternary_synapse/Neuron.scala
@@ -12,7 +12,7 @@ import fr.univ_lille.cristal.emeraude.n2s3.core.Neuron.NeuronEnds
 import fr.univ_lille.cristal.emeraude.n2s3.core.Neuron.{Inhibition, NeuronEnds}
 import fr.univ_lille.cristal.emeraude.n2s3.core.NeuronConnection.ConnectionEnds
 import fr.univ_lille.cristal.emeraude.n2s3.core.UnitCast._
-import fr.univ_lille.cristal.emeraude.n2s3.core.actors.{Message, ShapelessSpike, WeightedSpike}
+import fr.univ_lille.cristal.emeraude.n2s3.core.actors.{ShapelessSpike, WeightedSpike}
 import fr.univ_lille.cristal.emeraude.n2s3.core.event.{NeuronFireEvent, NeuronFireResponse}
 import fr.univ_lille.cristal.emeraude.n2s3.core.models.properties._
 import fr.univ_lille.cristal.emeraude.n2s3.core.models.synapse.FloatSynapse
@@ -21,6 +21,7 @@ import fr.univ_lille.cristal.emeraude.n2s3.core.models.synapse.{FloatSynapse, We
 import fr.univ_lille.cristal.emeraude.n2s3.features.learning.{LTDUntil, LTPUntil}
 import fr.univ_lille.cristal.emeraude.n2s3.features.logging.STDPImageGenerator
 import fr.univ_lille.cristal.emeraude.n2s3.models.qbg.{NeuronPotentialEvent, NeuronPotentialResponse, QBGParameters}
+import fr.univ_lille.cristal.emeraude.n2s3.support.actors.Message
 import squants.electro.ElectricPotential
 import squants.electro.ElectricPotentialConversions.ElectricPotentialConversions
 
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/models/ternary_synapse/Synapse.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/models/ternary_synapse/Synapse.scala
index 2dec150c9af24cfccd0d0a7e981f999cfa7bf32b..8c6fb21367c6e87ca6cc8dcef182468bb540c82f 100644
--- a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/models/ternary_synapse/Synapse.scala
+++ b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/models/ternary_synapse/Synapse.scala
@@ -6,8 +6,9 @@ import fr.univ_lille.cristal.emeraude.n2s3.core.NeuronConnection
 import fr.univ_lille.cristal.emeraude.n2s3.core.NeuronConnection.ConnectionEnds
 import fr.univ_lille.cristal.emeraude.n2s3.core.models.synapse.FloatSynapse
 import fr.univ_lille.cristal.emeraude.n2s3.core.UnitCast._
-import fr.univ_lille.cristal.emeraude.n2s3.core.actors.{Message, ShapelessSpike, WeightedSpike}
+import fr.univ_lille.cristal.emeraude.n2s3.core.actors.{ShapelessSpike, WeightedSpike}
 import fr.univ_lille.cristal.emeraude.n2s3.core.Time
+import fr.univ_lille.cristal.emeraude.n2s3.support.actors.Message
 
 import scala.util.Random
 
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/actors/Message.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/support/actors/Message.scala
similarity index 89%
rename from n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/actors/Message.scala
rename to n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/support/actors/Message.scala
index 2487c3ae052c6d0229bcc674c668335915127934..72e60f83b487a7774ca14ee3e65297452b7cfacb 100644
--- a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/actors/Message.scala
+++ b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/support/actors/Message.scala
@@ -1,4 +1,4 @@
-package fr.univ_lille.cristal.emeraude.n2s3.core.actors
+package fr.univ_lille.cristal.emeraude.n2s3.support.actors
 
 /******************************************************************************************************
  * In N2S3 actors are used to implements neurons. Neurons can exchanged messages between each other.
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/support/actors/MessageSynchronizer.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/support/actors/MessageSynchronizer.scala
index 759d750ae07f4a09c08acea576fb20da5c41b306..73b07efd0763bf93f98a96a561c6795e37b55ec1 100644
--- a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/support/actors/MessageSynchronizer.scala
+++ b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/support/actors/MessageSynchronizer.scala
@@ -6,7 +6,6 @@ import akka.util.Timeout
 import fr.univ_lille.cristal.emeraude.n2s3.core
 import fr.univ_lille.cristal.emeraude.n2s3.core.actors.NetworkEntityActor.ImplicitSenderRoutedMessage
 import fr.univ_lille.cristal.emeraude.n2s3.core.NetworkEntityPath
-import fr.univ_lille.cristal.emeraude.n2s3.core.actors.Message
 
 import scala.collection.mutable
 import scala.concurrent.duration.{FiniteDuration, _}
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/support/io/Input.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/support/io/Input.scala
index d731095b8212869675d05b4ff8154299c6a6421a..55850ec62940f1a8b212650ebeb7b648057fb26d 100644
--- a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/support/io/Input.scala
+++ b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/support/io/Input.scala
@@ -1,7 +1,7 @@
 package fr.univ_lille.cristal.emeraude.n2s3.support.io
 
 import fr.univ_lille.cristal.emeraude.n2s3.core.GlobalTypesAlias.Timestamp
-import fr.univ_lille.cristal.emeraude.n2s3.core.actors.Message
+import fr.univ_lille.cristal.emeraude.n2s3.support.actors.Message
 
 /**
   * Created by guille on 5/26/16.
diff --git a/n2s3/src/test/scala/fr/univ_lille/cristal/emeraude/n2s3/core/MockNeuron.scala b/n2s3/src/test/scala/fr/univ_lille/cristal/emeraude/n2s3/core/MockNeuron.scala
index 04df2d65c6c965074047b19724634f1047a1dac1..fbc9ce94a5016a252465229bae0fc1ede9023c40 100644
--- a/n2s3/src/test/scala/fr/univ_lille/cristal/emeraude/n2s3/core/MockNeuron.scala
+++ b/n2s3/src/test/scala/fr/univ_lille/cristal/emeraude/n2s3/core/MockNeuron.scala
@@ -3,7 +3,8 @@ package fr.univ_lille.cristal.emeraude.n2s3.core
 import fr.univ_lille.cristal.emeraude.n2s3.core.GlobalTypesAlias._
 import fr.univ_lille.cristal.emeraude.n2s3.core.Neuron.NeuronEnds
 import fr.univ_lille.cristal.emeraude.n2s3.core.NeuronConnection.ConnectionEnds
-import fr.univ_lille.cristal.emeraude.n2s3.core.actors.{Message, NetworkEntityActor}
+import fr.univ_lille.cristal.emeraude.n2s3.core.actors.NetworkEntityActor
+import fr.univ_lille.cristal.emeraude.n2s3.support.actors.Message
 
 /**
   * Created by falezp on 07/04/16.
diff --git a/n2s3/src/test/scala/fr/univ_lille/cristal/emeraude/n2s3/core/TestNeuronActor.scala b/n2s3/src/test/scala/fr/univ_lille/cristal/emeraude/n2s3/core/TestNeuronActor.scala
index dd925a3709feb86f277495f8d0fec95f2129bb49..a98dfc50a4d840c40e16dbda8aa2b23854010222 100644
--- a/n2s3/src/test/scala/fr/univ_lille/cristal/emeraude/n2s3/core/TestNeuronActor.scala
+++ b/n2s3/src/test/scala/fr/univ_lille/cristal/emeraude/n2s3/core/TestNeuronActor.scala
@@ -6,8 +6,9 @@ import akka.util.Timeout
 import fr.univ_lille.cristal.emeraude.n2s3.UnitActorSpec
 import fr.univ_lille.cristal.emeraude.n2s3.core.GlobalTypesAlias.Timestamp
 import fr.univ_lille.cristal.emeraude.n2s3.core.Neuron.{NeuronEnds, NeuronMessage}
-import fr.univ_lille.cristal.emeraude.n2s3.core.actors.{Message, NetworkEntityActor, ShapelessSpike}
+import fr.univ_lille.cristal.emeraude.n2s3.core.actors.{NetworkEntityActor, ShapelessSpike}
 import fr.univ_lille.cristal.emeraude.n2s3.core.models.properties.MembraneThresholdPotential
+import fr.univ_lille.cristal.emeraude.n2s3.support.actors.Message
 import squants.electro.ElectricPotential
 import squants.electro.ElectricPotentialConversions.ElectricPotentialConversions
 
diff --git a/n2s3/src/test/scala/fr/univ_lille/cristal/emeraude/n2s3/core/TestSynchronizer.scala b/n2s3/src/test/scala/fr/univ_lille/cristal/emeraude/n2s3/core/TestSynchronizer.scala
index 91ccc0020d6303f2cccf43f8a9442452dcbcd2a0..9c21157fcb9996dd0e0e3c5973f2c4514db11683 100644
--- a/n2s3/src/test/scala/fr/univ_lille/cristal/emeraude/n2s3/core/TestSynchronizer.scala
+++ b/n2s3/src/test/scala/fr/univ_lille/cristal/emeraude/n2s3/core/TestSynchronizer.scala
@@ -6,13 +6,13 @@
   
 package fr.univ_lille.cristal.emeraude.n2s3.core
 
-import akka.actor.{Actor, ActorRef, ActorSystem}
+import akka.actor.{Actor, ActorRef}
 import akka.testkit.TestActorRef
-import fr.univ_lille.cristal.emeraude.n2s3.core.Neuron.NeuronMessage
-import fr.univ_lille.cristal.emeraude.n2s3.{UnitActorSpec, UnitSpec}
+import fr.univ_lille.cristal.emeraude.n2s3.UnitActorSpec
 import fr.univ_lille.cristal.emeraude.n2s3.core.GlobalTypesAlias.Timestamp
-import fr.univ_lille.cristal.emeraude.n2s3.core.actors.{Done, Message, Spike}
-import org.scalatest.Matchers
+import fr.univ_lille.cristal.emeraude.n2s3.core.Neuron.NeuronMessage
+import fr.univ_lille.cristal.emeraude.n2s3.core.actors.{Done, Spike}
+import fr.univ_lille.cristal.emeraude.n2s3.support.actors.Message
 
 /**
   * TestSuite for the Synchronizer.
diff --git a/n2s3/src/test/scala/fr/univ_lille/cristal/emeraude/n2s3/core/synchronization/TestSynchronizedNeuronRef.scala b/n2s3/src/test/scala/fr/univ_lille/cristal/emeraude/n2s3/core/synchronization/TestSynchronizedNeuronRef.scala
index 0480ef4630b77f82d93bc6ae9f40a7ed1d2673a2..6cc4c5b310de14fb60397c67369ebcfd9e883139 100644
--- a/n2s3/src/test/scala/fr/univ_lille/cristal/emeraude/n2s3/core/synchronization/TestSynchronizedNeuronRef.scala
+++ b/n2s3/src/test/scala/fr/univ_lille/cristal/emeraude/n2s3/core/synchronization/TestSynchronizedNeuronRef.scala
@@ -5,11 +5,10 @@ import akka.testkit.TestActorRef
 import fr.univ_lille.cristal.emeraude.n2s3.UnitSpec
 import fr.univ_lille.cristal.emeraude.n2s3.core.actors.NetworkEntityActor.ImplicitSenderRoutedMessage
 import fr.univ_lille.cristal.emeraude.n2s3.core.Neuron.NeuronMessage
-import fr.univ_lille.cristal.emeraude.n2s3.core.actors.Message
 import fr.univ_lille.cristal.emeraude.n2s3.core.ExternalNetworkEntityReference
 import fr.univ_lille.cristal.emeraude.n2s3.features.builder._
 import fr.univ_lille.cristal.emeraude.n2s3.models.qbg.QBGNeuron
-import fr.univ_lille.cristal.emeraude.n2s3.support.actors.{ActorCompanion, PropsBuilder}
+import fr.univ_lille.cristal.emeraude.n2s3.support.actors.{ActorCompanion, Message, PropsBuilder}
 
 /**
   * Created by guille on 8/5/16.
diff --git a/n2s3_examples/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/apps/models/PassiveNeuron.scala b/n2s3_examples/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/apps/models/PassiveNeuron.scala
index 3c499f7f13e33a63d94ed32af85a4e3d3b2497e6..75ce6386728d68a71731461d59c6448250e7626d 100644
--- a/n2s3_examples/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/apps/models/PassiveNeuron.scala
+++ b/n2s3_examples/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/apps/models/PassiveNeuron.scala
@@ -3,8 +3,8 @@ package fr.univ_lille.cristal.emeraude.n2s3.apps.models
 import fr.univ_lille.cristal.emeraude.n2s3.core.GlobalTypesAlias.Timestamp
 import fr.univ_lille.cristal.emeraude.n2s3.core.Neuron.NeuronEnds
 import fr.univ_lille.cristal.emeraude.n2s3.core.NeuronConnection.ConnectionEnds
-import fr.univ_lille.cristal.emeraude.n2s3.core.actors.Message
 import fr.univ_lille.cristal.emeraude.n2s3.core.{Neuron, NeuronConnection}
+import fr.univ_lille.cristal.emeraude.n2s3.support.actors.Message
 
 /**
   * Implementation of a neuron which just resend all received messages