Implemented a mechanism for automatic version numbering,
Updated comments in povray.h
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.