A mini executor responsible for running the root future.
The async_ui_web uses this to drive the actual executor that runs the app.
If you want to spawn tasks, please use the executor from async_ui_web.
Use for accessing the thread local that determines whether or not DOM
futures being dropped should try to detach their nodes from the parent.
Rust’s drop glue drops struct fields in order of declaration,
so as the last field, we put a struct that will unset the thread local
when dropped.