firmware-test: Write the EEPROM on all detected slaves
firmware: Let make eeprom_id default to layout version 1.
tools/eeprom: Revamp the eeprom encoding tool

This collects a number of changes:
 - EEPROM is now specified in a YAML file, instead of a python file.
 - A proper commandline tool 'pinoccio-eeprom-tool' can now be used to
   parse YAML files.
 - It supports writing out binar to files and (somewhat) human readable
   output to stdout.
 - Errors are reported in a better way, usually without terminating the
   parsing or encoding.
 - The parsed YAML file is validated using the voluptuous python
   library, which allows making the encoding functions a a bit simpler.
 - Before, there was a separate offsets, roundings and data variables,
   where some were passed around and some were kept in EEPROM. Now,
   there is a single "Encoded" object passed around that contains all
   others.
firmware/test: Support up to 127 devices as per the spec