Properly display errors that are not 'Errors'

This is was initially brought up to fix a problem with YAML errors
being reported as 'undefined'. It should now show the result of the
object's toString, or the object stringified if the toString looks
unhelpful.

This is issue #369. I remember this giving me a headache as well when I first tried the tutorials but I forgot to do anything about it. Another side-note, I changed it a little so that strings aren't converted into Errors any more -- didn't seem that useful since that stack trace didn't go back to before the emission of the error event. Let me know if that's a problem!