Final commit before refactor and cleanup for teaching