added libgit2 support and changed basketname

- We put the whole basket subdir into a git repository and keep it
  up2date with commits.
- New baskets now have the truncated name with a uuid identifier. We
  change the direcotry on rename.

If the new basketname change is not wished I could rewrite it to return to the old way.

The cmake script was taken from: https://github.com/libgit2/libgit2-backends/tree/master/CMake.
I didn't find any license information on this.