replace ids/names for select boxes as well

Fixes #3236
Upgrade jquery-rails to ~> 3.0.0

Fixes #3217
Added Spree::Adjustment#return_authorization scope

Fixes #3239
Display default product image when variants have none

Account for scenarios where a product has variants but they don't have
any images. In that case when displaying a variant we should check if
the product master variant doesn't have an image before displaying a
noimage file.

Fixes #3172
Fixes #3240
Added credit owed state and added awaiting return and returned states to styles

Fixes #3258
Log CVV response messages on payments

Fixes #3266
Fixing the problem with translate with relative path.

This commit fix #3176 and add #translate method to Spree module.

To fix this issue, was necessary adding a monkey patch to initialize
the i18n after load the spree base controller.

Also, I changed the method #t. Now this method is an alias to #translate.

In my concept, we need to follow the same convention of i18n and
translation helpers of rails.

So, the developers can use #t and #translate without any problems.

Fixes #3257
Fixes #3176
Not all promotions respond_to :products

Fixes #3265
Fixes #3261
[frontend] Really check for flash[:error] in orders_controller_spec, rather than setting it

Fixes #3259
[frontend] Shipping rates should use Spree::Money, not number_to_currency, to display correct amounts on delivery screen

Fixes #3246
Always downcase promo code on promo.activate [Fixes #3272]

Old spree databases might have promo codes with mixed cases which would
make coupon codes case sensitive

e.g. "nocode" == "noCode" ("nocode" entered by user would be invalid)
allow shipping address with country or state attributes when creating
orders through the api
Only create promo items if order is eligible

Add a doc block to CreateLineItem.perform block to explain why it's not
suitable for Add to Cart events and explained another possible caveat

[Fixes #3275]
Don't convert taxonomy tree names to uppercase

Fixes #3241
[api] Add show action to Checkouts API
Fix race condition with product permalink generation

See this comment for a nice script on how to reproduce: https://github.com/spree/spree/issues/2714#issuecomment-19798918

Product creation in the API will now automatically be retried if an ActiveRecord::RecordNotUnique exception is thrown. This would be thrown due to the unique index which now exists on the spree_products table.

This commit also adds similar unique indexes to the orders, shipments and stock_transfers tables, although I was unable to get these showing similar behaviour to the products API in my testing.

Fixes #2714
[api] Create country+state to use in order_spec rather than hardcoding IDs
Update product_spec to check for ActiveRecord::RecordNotUnique when creating a product with duplicate permalinks, rather than a typical validation error

Conflicts:
	core/spec/models/spree/product_spec.rb
Test clicking logo in admin returns to /admin

Fixes #3221

Conflicts:
	core/spec/requests/admin/homepage_spec.rb
Remove deprecated method usage of set_table_name

This would break the core build once rails4 branch is merged into master. set_table_name is deprecated in Rails 4.

Fixes #3270