private static void HandleFiles(VaultClientFileColl fileColl, ChangeSetItemColl changes)
        {
            var diskPaths = fileColl.Cast <VaultClientFile>().Select(x => x.FullPath).ToList();
            var statuses  = ServerOperations.ProcessCommandStatus(diskPaths.ToArray());

            var pathAndStatus = diskPaths.Zip(statuses, Tuple.Create);

            foreach (var(path, status) in pathAndStatus)
            {
                switch (status)
                {
                case WorkingFolderFileStatus.None:
                case WorkingFolderFileStatus.Edited:
                    break;

                case WorkingFolderFileStatus.Missing:
                    changes.AddRange(ServerOperations.ProcessCommandDelete(new[] { path }));
                    Console.WriteLine($"Deleted {path} as it was {status}");
                    break;

                case WorkingFolderFileStatus.Renegade:
                    ServerOperations.ProcessCommandCheckout(new[] { path }, false, false, new GetOptions());
                    Console.WriteLine($"Checked out {path} as it was {status}");
                    break;

                case WorkingFolderFileStatus.Merged:
                case WorkingFolderFileStatus.NeedsMerge:
                case WorkingFolderFileStatus.Unknown:
                case WorkingFolderFileStatus.MoreRecent:
                case WorkingFolderFileStatus.Old:
                    Console.WriteLine($"Unhandled {path} with {status}");
                    break;

                default:
                    throw new ArgumentOutOfRangeException();
                }
            }
        }