Today if exception is thrown inside `dust.stream` call with `.on('error'` handler, the callback will never be executed. This seems wrong to me. Prash's change ensures that whenever error occurs it will be reported in on error callback.

I've got several STREAM unit tests for dust helpers timing out because the neither `throw new Error('error')` nor `dust.log(...` properly end chunk and neither of those are reported back as error to on error handler.