[Communication] Implement multi-thread and basic msg system

move out of //TODO