use float literal instead of double literal (fix VC++ warning)
render rings with premultiplied alpha blending mode

I think this is what they should be. Before the Renderer object was put
in place, the ring drawing code called glEnable(GL_BLEND) but didn't
actually set the blending mode, so it just got whatever blend mode was
active from previously executed display code.

When Renderer was done, some attempt was made to use the same blend mode
as before, but either that attempt got it wrong, or (more likely imho,
having checked the appearance as of alpha 19), some change before Renderer
was done had a knock on effect and caused the wrong blend mode to be used
for rings. Or maybe the blend mode was never right.

Either way, in #972 (from tomm), the blend mode was fixed, and
premultiplied alpha was used, but this was before Renderer.  When that
patch series was re-worked in #1357 and merged as #1278, the blend mode
change wasn't included (only atmosphere changes were included).
allow planetary ring style to be defined for custom systems

Planet.cpp will still ignore the value currently.
make Planet.cpp respect the RingStyle set on a SystemBody
allow custom defined rings on non-gas giants

Because if they're not allowed then one day we'll have someone turning up
and asking why the :rings specifier is being ignored.
set planet ring styles for Jupiter, Saturn, Neptune and Uranus
fix some minor style errors that have crept in

Mostly from merges that weren't done carefully enough, I believe.
[PVS-Studio] Use bool for Gui{Radio,Toggle}Button::m_pressed

V601 The 'false' value is implicitly casted to the integer type.
guiradiobutton.cpp 9
V601 The 'true' value is implicitly casted to the integer type.
guiradiobutton.cpp 30
V601 The 'false' value is implicitly casted to the integer type.
guitogglebutton.cpp 9
[PVS-Studio] Merge identical if-then branches in TerrainHeightRuggedLava

V523 The 'then' statement is equivalent to the 'else' statement.
terrainheightruggedlava.cpp 64
V523 The 'then' statement is equivalent to the 'else' statement.
terrainheightruggedlava.cpp 68
[PVS-Studio] Sound::PlaySfx and Sound::Event::Play take an Op, not a bool

V601 The 'true' value is implicitly casted to the integer type.
Inspect the fourth argument. ambientsounds.cpp 61

V601 The 'false' value is implicitly casted to the integer type.
Inspect the fourth argument. sound.cpp 158
[PVS-Studio] Don't try to use Pi::player before checking for NULL

V595 The 'Pi::player' pointer was utilized before it was verified
against nullptr. Check lines: 377, 384. worldview.cpp 377
[PVS-Studio] Avoid undefined behaviour (shifting ints of unknown size)

V610 Undefined behavior. Check the shift operator '<<. The right
operand ('i' = [0..63]) is greater than or equal to the length in
bits of the promoted left operand. polit.cpp 112
[PVS-Studio] Use format specifier %u for unsigned values.

V576 Incorrect format. Consider checking the seventh actual
argument of the '_snprintf' function. The SIGNED integer type
argument is expected. luaserializer.cpp 191

V576 Incorrect format. Consider checking the eighth actual
argument of the '_snprintf' function. The SIGNED integer type
argument is expected. luaserializer.cpp 191

V576 Incorrect format. Consider checking the fourth actual
argument of the '_snprintf' function. The SIGNED integer type
argument is expected. luaserializer.cpp 199

V576 Incorrect format. Consider checking the second actual
argument of the 'printf' function. The SIGNED integer type
argument is expected. luamodelviewer.cpp 497
[PVS-Studio] Don't check a SystemBody::Type against a SystemBody::SuperType

V556 The values of different enum types are compared:
switch(ENUM_TYPE_A) { case ENUM_TYPE_B: ... }.
starsystem.cpp 1094
[PVS-Studio] If branches with multiple statements need to be in braces

V612 An unconditional 'break' within a loop. starsystem.cpp 1882
fixup -- comment about random gas giant flavour
remove dead (commented out) code
use different names for different meanings
remove a load of unused data from GasGiantDef_t
GasGiantDef_t -> RingStyleConfig, and simplify logic for picking ring style in Planet.cpp