GitDownloadStrategy: generalize has_tag? to has_ref?
GitDownloadStrategy: factor out checkout args
GitDownloadStrategy: reset after checkout during updates

Otherwise, if the local branch is behind the remote branch, or has
diverged, we will stage the wrong revision.
GitDownloadStrategy: force checkouts

Local changes to the cached repository should not cause fetch or install
to error out.
torsocks 1.3

"We moved torsocks away from Google Code and back to the Tor
git repository. We also fixed a number of bugs and released
version 1.3."

Closes #17889.

Signed-off-by: Jack Nagel <jacknagel@gmail.com>