Client/Tools/VCS: create directory for repository

Older version of dulwich will not create the directory (even
with mkdir=True) for the repository. So we cannot rely on it.
Because we clean existing folders before, we have to create
the directory in every case.
Client/Tools/VCS: add always on top feature

You can specify a refname (like refs/heads/master) as revision and you
will always get the current tree of this refname. During verify it is
checked if the ref had changed in the remote repo and if an "update"
is necessary.
Client/Tools/VCS: some simplyfications using dulwich api
Client/Tools/VCS: add support for symlinks
Client/Tools/VCS: build index after checkout