Work around #8166

Signed-off-by: Zack Cerza <zack.cerza@inktank.com>
Merge branch 'master' of github.com:ceph/teuthology
Handle raw data copies through Paramiko

This change was prompted because version 1.13 of Paramiko
does UTF-8 checking.  Former shell cat and tar command piped
through paramiko do not handle raw characters well.  In order
to work with version 1.13, a new function, do_remote_sftp was
added that uses SFTPClient to copy raw data.  get_file(),
pull_directory(), and pull_directory_tarball() were modified
to use this new function.   The remote_mktemp function was also
modified slightly to insure that new-lines do not appear in
temp file names.

Fixes: 8116
Signed-off-by: Warren Usui <warren.usui@inktank.com>
Raw I/O calls are now remote object methods.

Changed remote_mktemp to be a method of the remote object.
Added methods to the remote object to copy files and
to write tar files.  Separated the permission setting of
remote files from the actual writing of remote files.
Moved SFTPClient code.  Changed get_file to be a wrapper
around a copy file call, and added the remote tar file calls
to pull_directory() and pull_directory_tarball().