Modify FAFTSetup to work with and without servo, in and out of chroot

Running FAFT in the test lab requires to decouple FAFT from chroot and
modify missing pieces to allow servo connected to either local host or
a Beaglebone board.

This change introduces modifications necessary to have the
firmware_FAFTSetup pass:

- verifying test image on the USB flash stick now relies on presence
  of the 'test' string in the CHROMEOS_RELEASE_DESCRIPTION line of
  /etc/lsb-release. The check is case insensitive, because developer
  builds and buildbots produce different line formats.

  The replaced check compared contents of the ssh key files, but the
  file was obtained from the Chrome OS chroot checkout.  This also
  required implementing the actual check locally instead of relying on
  lab_test.VerifyImageAndGetId(), which requires chroot presence.

- servo API to execute commands on the servo host has been modified to
  match the utils provided API. In particular the system_output()
  method is being added to runn commands and return their console
  output.

- instead of using the utils library indiscriminantly, the servo
  module executes commands on the servohost when servo is not local.

- changes to servo_test.py are mostly cosmetic, helping with debugging.

BUG=chrome-os-partner:15610
TEST=manual
 . outside of chroot with  local and remote servo:
  $ ./server/autoserv -m 192.168.1.4 --ssh-port 22 -s server/site_tests/firmware_FAFTSetup/control -r /tmp/autot --args ''
  $ ./server/autoserv -m 192.168.1.4 --ssh-port 22 -s server/site_tests/firmware_FAFTSetup/control -r /tmp/autot --args 'servo_host=192.168.1.103 servo_port=9999'
 . inside chroot with  local and remote servo:
  $ run_remote_tests.sh --board=link --servo --remote=192.168.1.4 firmware_FAFTSetup.control
  $ run_remote_tests.sh --board=link --remote=192.168.1.4 firmware_FAFTSetup.control --args 'servo_host=192.168.1.103 servo_port=9999'

Change-Id: I88ffac43526e2988ec9f88e2bbb8995ef55c5f7b
Signed-off-by: Vadim Bendebury <vbendeb@chromium.org>
Reviewed-on: https://gerrit.chromium.org/gerrit/39809
Reviewed-by: Tom Wai-Hong Tam <waihong@chromium.org>
4 files changed