Replace os.system with subprocess.check_output
Replace os.system with subprocess.check_output

It is generally recommended to use the subprocess module instead of the
os module to run subshell commands given since the former makes it
easier to comunicate with the process, has an improved security model,
etc. More information is available in [1].

Note that this change uses `check_output` instead of `check_call` to
prevent the command output from being printed to stdout.

This change also introduces two additional enhancements:
- Skip the hadoop test if the hadoop binary is not available.
- Skip the ssh test if the ssh binary is not available.

[1] https://docs.python.org/3/library/subprocess.html#replacing-os-system

efiop/dvc,dmpetrov/dataversioncontrol,dataversioncontrol/dvc,dataversioncontrol/dvc,dmpetrov/dataversioncontrol,efiop/dvc