Akka Actors, protocol cleanup and logging

Move to akka actors
Cleanup/seperate protocol
Added basic slf4j/logback config

This should close #372 and is work towards #390
I have test this locally, but all additional review/testing is gratefully received as it touches a lot of code which is currently uncovered by unit tests (@fommil)