Rewritten VarChoice framework to be dynamic

Adapt quickly and allow easy edits and tweaks for as much as 20
additional variables