Fixes #218 Discount Coupon and Shipping Cost

Fix calculation for Fixed Coupons with Shipping Cost
Add some unit tests. This just covers off the use case for the bug,
but need to add a lot more tests for other Discount Coupon test cases.