CyberSource donations (back-end)

* Create Donation order item
* Add tax-deductible messaging to the confirmation email and receipt pages.
* Update receipt page to make the course URL optional

This PR does NOT implement the purchasing flow, so there is not (yet) a way for users to actually use this infrastructure :)

Here's what the receipt page looks like:

* With a specific course specified:
![course_donation](https://cloud.githubusercontent.com/assets/2948394/4505818/2d3c8db4-4afb-11e4-966c-367d4b01c86b.png)

* Without a specific course specified
![no_course_donation](https://cloud.githubusercontent.com/assets/2948394/4505821/2fc61992-4afb-11e4-9faa-1c0db8896301.png)

Here's what the confirmation email looks like:

* With a specific course specified: https://gist.github.com/wedaly/6e99c79a8f8e476fb2a6
* Without a specific course specified: https://gist.github.com/wedaly/bac9a4d1598d4cbb3f25

Reviewers: @dianakhuang @stephensanchez @srpearce 
FYI: @cdodge @jbau 

[ECOM-413](https://openedx.atlassian.net/browse/ECOM-413)
Yes, the superclass will record the timestamp and status in the `purchase()` method, which then calls the `purchased_callback()` method of the subclass.