dispatch_group_wait is too opaque and too easily fooled