Add paypalrestsdk as dependency.
Refactor init to setup paypal with paypalrestsdk.
Split cart and checkout into two step process.
Fix coupon code checker.
Add collection_extra template tags.
Move checkout form to forms.py.
Add checkout page template and complete create_invoice process.
Round item_cost and item_tax to 2 decimal place.
Add create_payment_for_invoice to create Paypal payment object.
Add Pay on Delivery as new payment status.
Rename to create_raw_payment_for_invoice.
Add Payment model to record each payment.
Create payment object once the paypal raw payment created.
Redirect to Paypal page after payment created.
Add url and view to handle paypal payment execution.
Handle Paypal cancellation.
Show Invoice status on invoice detail page.
Use model method set_status to set and save status.
Show order delivery status on invoice page.
Should add payment button on invoice page in the future.