duktape: Make backtraces more useful

Use duk_pcompile_string_filename() and duk_pcall() instead of
duk_peval() so we get the filename in js backtraces:

  mwjs error: RangeError: execution timeout
      at [anon] (duktape.c:72259) internal
      at fooCmd (.mw-script/mw.js:20) preventsyield
1 job for master in 10 minutes and 18 seconds (queued for 3 seconds)