Create course model
Adds schedule and semester models
Adds test for major model
Changes json private member to _json