changed messenger to allow multiple start() stop().

Also added more tests on the executor.