Refactoring and cleaning up FW programming functions.

Moved and cleaned up the programmer.py functionality to
firmware_programmer.py.

1. Now using the flash_ec script for ec programming of
supported boards. This script is maintained by the
development teams.

2. Refactored flashrom programmer to support multiple boards
with the correct vref voltages supplied.

3. FW programmer objects are instantiated in the servo client
and can be changed based on the version of servo.

4. Exposed get_board and get_version in the servo client.

5. Smaller cleanup of functions calls, etc.

BUG=chromium:317911
TEST=Manually at desk

Change-Id: I0440fa0a7694ca53c7bbc944fbd906df94e1bd25
Reviewed-on: https://chromium-review.googlesource.com/177598
Reviewed-by: Yusuf Mohsinally <mohsinally@chromium.org>
Tested-by: Vic Yang <victoryang@chromium.org>
Commit-Queue: Vic Yang <victoryang@chromium.org>
4 files changed