Extended versioning scheme and information.

If necessary, version tags may include a patchlevel in the
fourth position, e.g. 3.5.0.1. It is used if there is a
need to tag between real (stable) releases.
The patchlevel is exported to LPC in the define __VERSION_PATCH__
(which is actually not new, but was a constant 0 before).

The define __VERSION__ is a concatenation of with the version
(which includes the patchlevel if it is != 0), the so-called
local level which muds may add (in patchlevel.h[.in]) and
commit ID describing the git commit that was used to compile
the binary.
The version information in the log file does also contain the
version string, the local level and the commit ID.

The detailed version info includes additionally the name of
the last version tag in the git repository, the data it was
tagges and the person tagging it. Additionally the data and
time the binary was compiled.

If the driver is compiled from a git repository these
information is created automatically by version.sh and
mk-patchlevel.sh.
The information might be missing elements and be incorrect if
the driver was compiled from sources not in a git repository,
especially: release date, tagging person, commit ID.