private async Task UpdateListCaches()
        {
            AllChars = await Task.Run(() => ActiveList.Concat(InactiveList).ToList());

            Allies = await Task.Run(() => AllChars.Where(x => x.PlayerControlled).ToList());

            Enemies = await Task.Run(() => AllChars.Where(x => !x.PlayerControlled).ToList());

            EventHandler handler = OnListUpdate;

            if (handler != null)
            {
                handler(this, EventArgs.Empty);
            }
        }