added testOptionalOfThingNotCopyable()
use Execution::Thread::SuppressAbortInContext in a few more contexts where shutting down contained threads that contain captured this pointers (and so must be shutdown before destruction of contianing object)