client: create a "flattened" version of the Error

So that it will be properly serialized in browsers that set properties
like non-enumerable (Firefox).
client: toString() the err.name *after* copying over all error props

Fixes old IE :\
repl: parse more syntax errors from more browsers
repl: prepend the "name" and "message" to stack

When necessary...
Merge pull request #8 from TooTallNate/update/even-better-error-handling

Even better error handling