This diff allows displaying the aura range of selected entities. A config option is included to allow disabling the feature, and a hotkey has been added to allow toggling the rendering of aura ranges in-game (without having to open the options menu). The line texture, mask, and line thickness used can be specified in the aura's JSON. If no rangeOverlay data is specified in the aura's JSON, then the default textured line will be rendered - the line used for territory boundaries and buildings selection overlays, outline_border.png.
It is possible for an entity to have more than one range aura; currently, this seems to only be the case for ptol_hero_cleopatra.xml, and there will need to be design decisions made regarding how to display multiple range overlays. This diff will render all aura ranges an entity has.
This diff refactors the UpdateStaticOverlay function (originally used just for rendering building outlines) into a more generic function that handles textured lines. It could eventually be adapted to allow rendering more types of line overlays for entities, for things like the range of defensive buildings like fortresses/defense towers (#3915).
SOverlayTexturedLine is used mainly because the rendered lines adapt smoothly to rough terrain. The other option would be to use quad texture overlays, which allow for unique textures that are not lines (and they use less memory), but they clip severely through uneven terrain. (#1368).
This feature can also be used to help with implementing the negative farm aura around Civic Centers, although there is uncertainty if this is something that is wanted (#4342).
Eventually aura range could be added to building previews.
See also lots of design discussions at https://code.wildfiregames.com/P25#164