Implemented a mechanism for automatic version numbering,
Updated comments in povray.h
Corrected wrong rotation in `Round_Pyramid_N_in` in shapes3.inc.

Submitted on behalf of Friedrich Lohmueller.
Added CIE L*a*b* conversion macros to `colors.inc`, and added `colors_ral.inc` containing RAL Classic colours.
Update for `colors_ral.inc`.

Added previously undefined RAL_8000 colour.
Implemented non-linear colour and pigment map interpolation.

The syntax is changed as follows:

    COLOR_MAP:
      color_map { COLOR_MAP_BODY } | colour_map { COLOR_MAP_BODY }
    COLOR_MAP_BODY:
      COLOR_MAP_IDENTIFIER | [blend_mode INT] [blend_gamma FLOAT] COLOR_MAP_ENTRY...

    PIGMENT_MAP:
      pigment_map { PIGMENT_MAP_BODY }
    PIGMENT_MAP_BODY:
      PIGMENT_MAP_IDENTIFIER | [blend_mode INT] [blend_gamma FLOAT] PIGMENT_MAP_ENTRY...

The possible values for blend_mode are as follows:

    0 (default): Colour interpolation is performed working gamma space as defined by assumed_gamma.
    1: Colour interpolation is performed in linear colour space.
    2: Colour interpolation is performed in the gamma space defined by blend_gamma (defaulting to 2.5).
    3: Chromaticity interpolation is performed in linear space, while brightness interpolation is performed in the gamma space defined by blend_gamma.
Modified povray.h and pre-commit hook for new version numbering scheme.

For official proper releases, POV_RAY_PRERELEASE in povray.h should be undefined, resulting in the version number "X.Y.Z"; unix/VERSION should contain that same string.

For development versions, POV_RAY_PRERELEASE in povray.h should be set to "alpha.NUMBER", which the pre-commit hook will update to "alpha.TIMESTAMP", resulting in the version number "X.Y.Z-alpha.TIMESTAMP";
unix/VERSION should contain the string "X.Y.Z-alpha.NUMBER", which the pre-commit hook will also update to "X.Y.Z-alpha.TIMESTAMP";
if desired, "alpha." might be replaced with any other string; e.g. "beta.NUMBER" would result in the version number "X.Y.Z-beta.TIMESTAMP".

Note that the pre-commit hook script in .git/hooks in your local workspace needs to be replaced with the new version provided in "tools/git/hooks".
Added some basic documentation on version numbering in `source-doc/versioning.md`
Merge branch 'feature/auto-revision-number' and update version number to 3.7.1 (alpha)
Light sources' distance-based fading can now be set to obey an inverse-power law at all distances.

Setting a light source to have non-zero `fade_power` but zero `fade_distance` (or not specifying `fade_distance` at all) will now cause the distance-based light attenuation to follow the simple formula "attenuation = 1/(d^fade_power)",
yielding the light's nominal power at a distance of 1.0 units. (At large distances this has a similar effect as setting `fade_distance 1/pow(2,fade_power)`, or setting `fade_distance 1` while reducing the light's nominal brightness by 50%.)

When `#version 3.70` or lower is set, a non-zero `fade_power` setting will be ignored if `fade_distance` is set to zero or left unset, mimicking the behaviour of previous versions, except that now a parse warning will be generated.
Fixed a bug in average textures introduced during colour refactoring.
Merge branch 'hotfix/average_texture'
Merge branch 'master' into feature/colour_model