added support for variants in eagle. This enables you to define variants which you can easily select to swap parts or define "do not populate" for parts. It also enables you to have different values for the same part in different variants. This change first adds the awareness of the eagle-bom.py script for variants - before it happily took all parts from all variants in the same bill of material without mentioning the different population definitions or values