Support ini files with spaces around the ‘=‘.
Add an early TS tileset importer and temperate tileset.
Change indexes into tile arrays to be stored as bytes to save memory.

The index value needs only be big enough to handle all defined terrain types. This is a low number so we can save memory by defining it as a byte. This particularly saves memory for the CustomTerrain field in the Map class, which defines a cell layer for the map using tile indexes, so we can reduce the size of that layer 4x as a result.
Don't store pre-calculated texture coords in Sprite.

By storing only the four corners, we can save the object overhead of an array and 4 float elements per sprite. This results in savings of around 5 MiB to store these coordinates.
HashSet<byte> => BitArray resourceTypeIndices

BitArray can store 256 bits in 32 bytes plus overhead (pointer & length),
which gives it better memory locality too (<= 2 locations in memory).
Also, the actual count will be much less, probably at most around a dozen.
This might not impact performance, but the AI is dumb & HashSet<byte> is
clearly inefficient.
Changed Vertex constructors to pass more parameters as plain floats.

This avoids callers having to construct a float2 struct, only to have the Vertex constructor unwrap it into individual components again.
Moved two more Orders from RA to Common
Fix Eluant.dll reference in Common project. Requested in #6723.
Add an aspect ratio correction flag to VqaPlayerWidget.
Make the video cancel hotkey configurable.
Prevent mouse events from propagating through a video.
Fix the title of the TD missions panel.
Add support for mission groups.
Add support for briefing videos in the mission menu.
Upgrade TD missions for the new mission chooser.
Upgrade RA missions for the new mission chooser.
Add support for thirdparty missions.
Update ingame briefing panel for new preview dimensions.
Fixes old Lua Turn Activity crash
Fixes old Lua Move Activity