Akka rework

using actors properly and big refacto