inclusionPoint
* java.io.tmpdir should work well on Windows as well.
I am dum.
Cleanup.
Fix select logic wrt files.
Fix incorrect path to test/jruby/test_helper.rb.
Merge branch 'more_prepend' of github.com:tduehr/jruby into tduehr-more_prepend
Additional tweaks for @tdeuhr's prepend work.
Merge branch 'tduehr-more_prepend'
Pass staticScope through interpreter call stack + optimized imports.

* In preparation for a fix for #1792, pass the current static scope
  through the interpreter call stack.

* Unrelated: I accidentally applied optimize imports on the ir/
  directory while refactoring in IntelliJ.

* Next steps:
  - Make the nesting-depth fix outlined in #1792.
  - Maybe, rename CurrentScope to ActiveScope.
  - Maybe, fix ScopeModule to be based off CurrentScope.
  - Maybe, get rid of currDynScope arg through call stack and get it from
    ThreadContext where needed (maybe).
Fix #1792: Remove IRScope references from CurrentScope and ScopeModule

* Record nesting depth and use that to traverse the static-scope
  hierarchy.

* Persistence code is not fully fixed up -- will require fixup when
  it is time to revive that code.

* Some other unrelated cleanup.

* No change in rubyspecs and mri test results.
Minor change.
Set native open files to cloexec.
Fix errno handling in spawn.
Comment cleanup and review.
Make argv array of String and add some bounds checks.
dln_find_exe_r should return null when nothing found.

In MRI, this calls dln_find_1, which eventually calls stat on the
massaged path. When that fails, errno should be ENOENT and this
path returns null. In MRI, most callers take null to mean an error
and assume errno will have the proper value.
Use new spawn logic for backquote, when possible.

This allows us to get proper exit status and full behavioral
compatibility with MRI's backquote.
Never store a singletonized string in dedup hash.
Fix strDup to use real class, as in MRI.