fixing how messages are returned from handlers