Initial refactors and tests from Jeff lecture time
Moved around some final pieces, module-ized things
Merge branch 'master' into class_testing