public Program()
 {
     _versionIdentifier = new DLLVersionIdentifier();
     _packageDiscoverer = new NugetPackageDiscoverer();
     _dllAuditor = new DLLVersionAuditor();
     _resultsFormatter = new ResultsFormatter();
 }
        static int Main(string[] args)
        {
            _versionIdentifier = new DLLVersionIdentifier();
            _packageDiscoverer = new NugetPackageDiscoverer();
            _dllAuditor = new DLLVersionAuditor();
            _resultsFormatter = new ResultsFormatter();

            // Test if input arguments were supplied:
            if (args.Length != 2 && args.Length != 3)
            {
                System.Console.WriteLine("Please enter a path to the Sitecore zip file as the 1st argument, and the path you want to generate the config for as the 2nd argument. 3rd argument is optional, as the name of a single DLL you want to check.");
                return 1;
            }

            string binDirectoryPath = ExtractBinDirectoryFromZip(args.Skip(0).First());

            return Process(binDirectoryPath, args.Skip(1).First(), (args.Length == 3) ? args.Skip(2).First() : "");
        }