Fixes messaging after applying coupon code promo with CreateLineItems action. Fixes #4697
Refactor Spree::ProductHelper#variant_price_diff

* Change the logic of the code to make it easier for the next
  commit.
* Remove duplicate code from the HTML generation.

Change #variant_price_diff to handle when the product amount is nil

Fixes #5493
Add required attributes to required product admin form fields

* Adjust spec example inputs to allow submit with that restrictions.

fixes #5496
make bogus gateway match actual gateways. ie. don't assign profile id for failed payments

fix handling of retry payments and multiple payments

fixes #5499
Depend on factory_girl_rails 4.5.0
We need to be more restrictive with factory girl updates.