Exercise System Overhaul

Overhaul to the exercise system to allow presentation of data trees in a simple manner.
Can use ```{Integer}``` to denote it as optional. Also as ```{String=EXAM PREP}``` to denote optional that defaults to EXAM PREP.