reorder async() conditional compilation variants to factor more code.
indent and comment #if.
Try to see if giving the addres solves the MSVC compiler issue.
make shared_state_nullary_task copyable and movable and avoid msvc default generation.