Improve LOD, update game demo and demo4, add model file type, and more

Improve LOD handling, adding a maximum LOD level selectable for each
object, and make the LOD level for physics collision detection
selectable. A threshold scaling factor is seperately enabled for each
model which is compounded with the scaling factor defined for the
object.

Attaching a light to an object now also includes a reference direction
(relative to the model) for attached spot and beam lights, so that the
light direction rotates with the model.

Make the "game" demo (a trivial multi-level) game work again with the
current code base. It clears and recreates the scene for each level.
The backend has been adjusted to allow for this.

Move some flags in libsre from a boolean to the combined rendering
settings flags.

Provide a deconstructor for sreBaseModel so that system memory for vertex
attributes and triangle data can be cleared.

Provide a proprietary binary file format to quickly load and save
models (used in demo4).

Changes for demo4:

More dynamically use different numbers of LOD levels for terrain,
depending on the complexity and gains made by less detailed LOD levels.
This is still work-in-progress.

Cache calculate terrain meshes on disk, and use them when the demo is
run with the same configuration. This makes using highly detailed
Earth terrain meshes significantly faster.

Tweak the spotlight positioned at the (spacecraft) view position. The
spotlight still has bugs in conjunction with the earth shader (blue
light in night areas, the color should reflect the color texture,
i.e. mostly green).

The spacecraft is hidden (configurable) only when it is being
controlled, and the "player" ball can be dropped to the surface
with Space on the keyboard.

Show latitude/longitude on screen.

Adjustment to the earth shader in the main lighting shader source.

Signed-off-by: Harm Hanemaaijer <fgenfb@yahoo.com>