ISettingControl is really only designed for single values but there may be techniques you can use to store a few variables.
For example in the source code under Web/Controls we have CountryStateSettings.ascx which implements ISettingControl but we managed to use it for both Country and State and the State list is driven by the Country list. When we use the SetValue we pass in Country|State and when we use the GetValue it returns Country|State. So it basically uses a pipe separated string to store 2 values. Maybe you could pass in both the url and the field name array and return both from the control. I guess you would just use a different delimiter for the array values so you can split it back out to variables inside the control. Doing this you would have to persist the setting in its concatenated format, but you could parse that back out into properties within your module as well.
Hope it helps,
Joe