CMake: allow selection of vendor suffixes

When you need to test out multiple versions, it's not always clear
which one is installed. When given the DESCRIBE_VERSION option, our
build system will now use git-describe to determine the version,
instead of using the one in version.h.

When given a VENDOR_VERSION option, the text will be added to the
so/dll name.

The major, minor and revision defines stay as they are, but
LIBGIT2_VERSION will be set to this describe string.