[api] Fix 1.8 syntax errors in ProductProperties, ReturnAuthorizations and Taxonomies controllers
Introduced datepicker_field_value helper method for datepicker fields
Allows old orders to get promo adjustments

UNACTIVATABLE_ORDER_STATES already covers scenarios where a promo should
not be applied to an order

Fixes #2388

Fixes #2395
Freeze to rspec-rails 2.12.0 due to this commit:

https://github.com/rspec/rspec-rails/commit/09793f885637ee4d6f5cc2c10b4f60b078acb9b5#commitcomment-2403679
[promo] Fix 1.8 syntax error in promotions/actions/create_adjustment_spec
[api] Fix 1.8 syntax error in Api::V1::BaseController
Fix 1.8 incompatibility with Time.new in base_helper_spec

Related to #2405
Remove unneeded preloading of preferences
make new product button always visible on edit product page.

I found that it will be very useful when entering products through admin side. this will allow use to quickly navigate to product page after adding new one without going back to product list

Fixes #2407
Namespace OrderPopulator reference in OrdersController so people don't run into potential issue where it would attempt to lookup a top-level OrderPopulator class
Fixed hardcoded paths to fontawesome

Fixes #2424
Allow payment method to control auto_capture?

Some gateways (ex. samurai, eway, stripe) only support purchase, not
auth/capture. This allows those gateways to override auto_capture?, and
coexist with other payment methods not using auto_capture, and also
eliminates the required configuration for those payment methods.

Fixes #2304
Revert changes from #1981

This is due to sbounmy suggesting it could be useful:
https://github.com/spree/spree/issues/1981#issuecomment-11682782
Use available? and acknowledge allow_backorders setting in OrderPopulator

Fixes #2430
[api] Remove api/v1 directory, move inventory_units controller to correct spot
Ensure option values in Variant#options_text are sorted in a predictable order

Fixes #2432
admin product edit: back to products list fix to preserve query params

Fixes #2431
Removed disableSelection() call which was causing problems in Firefox.

Fixes #2432
Changed scope for country name translations

This is done to avoid conflict with label for Spree admin configuration menu.
See issue #2420

Fixes #2421
Cleanup product and variant factories

Fixes #2419