As intended.
Previously, I've observed bugs where we either: 1) Exit too early, leaving undownloaded objects 2) Hang while downloading This rewrite hopefully fixes both.