This is an attempt to modularize an ecommerce checkout into steps.
@checkout = Checkout.new(ShippingStep.new, BillingStep.new, ConfirmationStep.new)
This will add 3 steps to checkout. Put the steps in the correct order. Checkout.new(1st, 2nd, 3rd)
Call @checkout.current
Call @checkout.next or @checkout.previous
Call @checkout.current.complete