added GitWorkspaceProvider to reduce the abundance of temp files; now executes git pull when directory already exists