The Optimizer
Inheritance: System.Windows.Forms.Form
        /// <summary>
        /// Call the Optimizer
        /// </summary>
        void ShowOptimizer()
        {
            // Put the Strategy into the Undo Stack
            Data.StackStrategy.Push(Data.Strategy.Clone());
            Data.IsStrategyReady = false;

            Optimizer optimizer = new Optimizer();
            optimizer.SetParrentForm = this;
            optimizer.ShowDialog();

            if (optimizer.DialogResult == DialogResult.OK)
            {   // We accept the optimized strategy
                this.Text = Path.GetFileNameWithoutExtension(Data.StrategyName) + "* - " + Data.ProgramName;
                Data.IsStrategyChanged = true;
                RepaintStrategyLayout();
                Calculate(true);
            }
            else
            {   // When we cancel the optimizing, we return the original strategy.
                UndoStrategy();
            }
            Data.IsStrategyReady = true;
        }