mk: Rename CTEST_BENCH to TEST_BENCH

The CTEST prefix is specifically related to the compiletest driver
mk: Add NO_BENCH variable for turning off the --bench flag
Modify test to expose issue #6492.
Fix opts_str.

opt_val doesn't not fail! for missing options.

Closes #6492
Fix comment.
No longer treat \ as a path separator on posix systems.
std::rt: Use 2MB stacks

Seems to be around the minimum needed by rustc without split stacks
std::rt: Change Thread interface to require an explicit join

Makes it more obvious what's going on
std: Remove ManualThreads spawn mode
std: Remove ThreadPerTask spawn mode. Unimplemented
std: Remove PlatformThread spawn mode. Obsolete
std: Remove ExistingScheduler spawn mode. Unused
std: Remove CurrentScheduler spawn mode. Unused
std: Remove get_task function. Unused
std: Remove foreign_stack_size spawn option. Irrelevant to future FFI changes
syntax: add 'in' keyword
syntax: add temporary 'foreach' keyword.
syntax: implement foreach .. in .. { .. } via desugaring.
rustc: fix a pp bug.
rustc: silence unused-var warning.