Fix issue where error is not reported from worker -> worker pool sometimes

Previously if an Error was thrown while executing an onMessageReceived callback,
and that Error didn't have a stack property (like Maximum Callstack Exceeded
errors), the response back to the worker pool would be empty.

This attempts to use error.message if error.stack is not available.