Fixes for nested variables and "name-from-attribute"
Added qualifier to retain an attribute used to name a variable
Refactored out "data providers" into a separate module and added more test cases