Handle IndexError for integer ParamList lookups.

We expect ParamList objects to use strings for their
indexes like AssociatedDeviceList['1'], but we transparently
handle the older convention of using Integers.

That integer fallback was only handling KeyError, as from a dict,
but data models using AutoDict like brcmwifi.py would raise an
IndexError instead. Add a test to demonstrate the problem, then
fix it.

Fixes b/33414470.
Fixes remaining symptom of b/29127321.

Change-Id: I7234d330c0bffec6f6418c468af8cd9f7a019841
2 files changed