Add NSQ subscription, refactoring

Signed-off-by: Arnaud Porterie <arnaud.porterie@docker.com>