Task GetPackage(SpecificVersion package) {
var packageName = package.GetFullName();
var remotes = FindRemotesWithPackage(package.Name).ToArray();
Repository.Log("\nFetching package: {0} ({1})", package.Name, packageName);
if (!remotes.Any())
throw new NoSourceFoundException("No source found with " + package.Name);
return Repo.DownloadPackage(packageName, remotes, StatusRepo.CancelToken);
}