Split EnumIntOption from StringOption
Remove storeEnumIndex() from StringOption, and add EnumOption that
supports the same input values as StringOption with enumValue(), but
stores the result in an integer variable.
This removes complexity from StringOption(), where managing all possible
combinations of store(), storeEnumIndex(), and their defaults reasonably
was quite complicated.
Increase use of enum types instead of string comparisons.
Change-Id: I2f1bca204af83dc404b6f20842119d1b7d4a27ad
18 files changed: