(WIP) Cdodge/shopping cart rewrite

This is the wrong place to do this special casing.  This logic belongs in the `purchase_item` function of the `PaidCourseRegistration` class, not in the `Order` class.