Repo + viewer module generation from exercise conf
Refactored autogen + matched existing exercise format