fix(clientsidescripts): convert non-Error exceptions to Errors

If any functions called by clientSideScripts throws a an exception that
doesn't inherit from `Error`, the stack trace is completely unhelpful and
the message is just "unknown error."  This commit wraps such errors into
`Error` instances so that we have meaningful stack traces and the correct
exception message.  (e.g. This is the common case when running dart2js
code.  This commit gives us the Dart stack trace and exception message.)

In addition, I've pushed the construction of the string to install into
the browser into clientsidescripts.js.