Ports changes to models and model tests along with some settings changes...

... from feature/tracks_activation
OK, I think I understand what you're trying to do here.  First off, I still think that a ManyToMany field could be of use elsewhere (like if you have a page displaying all of the Stages for a track) and it also makes it easier to think about the relationships between the models for anyone that looks at the models.py file so I'd go ahead and add it in.  I'd also suggest that there is a more efficient option for you to figure out if there are urls for each track, which would be to compare counts between the StageUrls for the course with the number of Tracks for the course.  The "select count" statements should be more efficient, plus you wouldn't need to use the `get_or_none` method.  This assumes that a StageUrl requires a url though.