public void ExecuteTactics(TurnState turn)
        {
            if (ActionBuffer.Count == 0)
            {
                var scoredTactic = SelectTactic(turn);
                _output.Debug($"{scoredTactic.Strategy.GetType().Name}, because {scoredTactic.Reason}");
                var returned = scoredTactic.Strategy.Do(this, turn, scoredTactic);
                foreach (var a in returned)
                {
                    ActionBuffer.Enqueue(a);
                }
            }

            if (ActionBuffer.Count > 0)
            {
                ActionBuffer.Dequeue()();
            }
        }