Refactored Checkout a bit. Split the OfferLess and Offer Rules.