Refactor to be more functional/testable, use edX test fixtures per Sarina, et al.