Load variable groups in the right order

This changes the format variable groups are saved in: they're now an array of objects with "name" and "variables" keys, so the order can be preserved.
fix box-sizing on variable list