Add teacher support classes
Finish teacher implementation