Remove unused method Grit::Repo#archive_tar_gz

This method is not used anywhere in the GitLab code base; we use
Grit::Repo#archive_to_file instead. We are removing #archive_tar_gz
because it is one of the few reasons for keeping an unsafe, deprecated
code path around.
Remove Grit::Repo#archive_tar (not used in GitLab)
Use spawn in Grit::Repo#archive_to_file

This code lacks the sophistication of Posix::Spawn::Child (there is no
timeout for instance) but it builds the pipeline required for
compressing an archive without resorting to shell scripting and string
interpolation.
Remove deprecated shell scripting code path
Separate arguments from options with --
 Merge branch 'no_strings' into 'master'

Remove deprecated shell scripting code path
Specify the compression command as an Array
Use better variable names in Repo#archive_to_file
 Merge branch 'pipe_as_array' into 'master'

Pipe As Array

This is a breaking change.