Closes #51: reimplement toggling feature groups
and a little cleanup