Take scripts as ~str to support non-ASCII string literals etc.

The ASCII-based JS_EvaluateScript converts to UTF-16 internally, so this
shouldn't be fundamentally worse (but I haven't benchmarked the two conversion
routines or anything).
Merge pull request #41 from kmcallister/jsstr

Take scripts as ~str to support non-ASCII string literals etc.