orders api now returns its variants product id #2561 #2565

Fixes #2587
Added CouponApplicator class

Fixes #2548

This is a combination of four commits + this one:

* Use CouponApplicator in API's CheckoutsController
* Fix spec failures
* CheckoutsController spec for apply a coupon to an order
* Removed unnecessary include