Check if spree route proxy responds to root_path

Some stores may not define a root_path under spree engine. Currently
only spree_frontend component does that.
Add product with track_inventory false via backend

Fixes #4309
Make auto_capture? a per payment configuration

Fixes #4302
Do not use orders_per_page to determine amount of zones returned in Admin::ZonesController

Fixes #4305
Duplicate variants when duplicating products

Fixes #4029
Fixes #4264
Use a test email address in checkout_spec so that I'm not subscribed to random mailing lists
Ensure products get assigned a 'proper' permalink when duplicating

The caveat of this is is that if you clone a deleted product, it'll look something like this:

copy-of-1392174386_apache-baseball-jersey-1

That's easily fixable, though.

Fixes #4180
Correct check for permalink in product duplicator spec
No longer run the actions for a promotion if that promotion is not eligible

Fixes #4270
Add dependent destroy to category mapping table

Fixes #4312
[api] Use a valid order with line items in coupon code application test

This is necessary due to the changes within c623e54df876f45cbf16729034ff9c4297436bd3
order concurrency for 2-1-stable spree

* separate PR for 2-1-stable due for https://github.com/spree/spree/pull/4286

Fixes #4334
Return true/false with Promotion#activate

This way, you can tell if the promotion was really activated or not
Show the coupon_code_not_eligible if Promotion#activate returns false in CouponApplicator
Exit after dummy app cannot be found
Only load accessible driver if asked to do so
Only skip capybara inaccessible specs if accessible driver is loaded
Defaulting variant weight to 0 at the schema level

Fixes #4300
Fixes #4311
ReturnAuthorization uses stock_location_id

- Replaced code in ReturnAuthorization#process_return to find the
  StockItem based on ReturnAuthorization#stock_location_id rather than the
  original shipment's stock location.
- Modified feature and controller specs to set the stock_location_id
- Added tests to the return authorization model specs that test
  returning to either the initial stock location or a new stock
  location. These currently fail (by design).
Use correct response.body in set_jsonp_format

Fixes #4332