public async Task<List<Package>> Checkout(IReadOnlyCollection<string> packageNames,
bool? useFullNameOverride = null) {
StatusRepo.Reset(RepoStatus.CheckOut, packageNames.Count());
var packages = new List<Package>();
foreach (var p in packageNames)
packages.Add(await CheckoutAsync(p, useFullNameOverride).ConfigureAwait(false));
return packages;
}