Кружочки спавнятся в асинхронных тасках.
Макромагия нужна потому что Rust не может в асинк замыкания нормально.
|world: &mut World| async { use_world(world).await; }не компилируется если потребовать такой баунд.
for<'a> F: FnMut(&'a mut World) -> Future + 'aХотя с
async fn такое сработает
