public ApplicationManager(ApplicationManagerSettings settings)
        {
            _settings = settings;

            _config = new RegistryConfigAdapter(settings.CompanyName, settings.ApplicationName);
            _server = new NamedPipeServer();
            _server.ClientDisconnected      += OnClientConnectionDisconnected;
            _server.ReceivedCommand         += OnClientConnectionCommand;
            _server.ClientConnectionFailure += OnClientConnectionFailure;
        }
        static void Main(string[] args)
        {
            var settings = new ApplicationManagerSettings
            {
                AppDirectory = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "Versions"),
                ApplicationName = "DemoApp",
                CompanyName = "Griffin",
                PickupPath = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "Pickup")
            };
            var appManager = new ApplicationManager<MyApplicationInit>(settings);
            appManager.Start();


            Console.ReadLine();
            appManager.Stop();
        }