Make GitCloneOptions a struct to fix issue #635