Add a default format if no format is defined in the locale file. Use the same default format as the datepicker gets in the translations partial.

Fixes #3602
While an order_id field exists within inventory_units, we should be able to retrieve these using an association

Fixes #3744
Add regression test for #3744
Associate user in Order `merge!` when possible

Users might be losing their cart changes when they come back but don't
visit either the /cart page or the /checkout

Fixes #3742
Fixes #3736
Bump active merchant to 1.38.1

Fixes #3745
refactored spree stock estimator

Extracted functionality out of #shipping_rates for choosing the default
shipping rate and the for the order shipping rates should be sorted in,
in the interest of overriding said behavior.

Change-Id: Iefcce00f1f2ebfedd565dd3aeb540a6111ffc5b7

Fixes #3748
Fix product paging issue

Fixes #2851
Fixes #3064

Conflicts:
	frontend/app/controllers/spree/taxons_controller.rb
Fix expectations in order/adjustments_spec so that it now passes
Change the default value of `states_required` to false

The default value of states_required column of :spree_countries table is
true which makes the configuration option
Spree::Config.address_requires_state essentially a no-op. Therefore,
setting the aforementioned configuration option to false is not enough
to remove the state requirement of a country.

This commit adds a migration for the :spree_countries table with the
name ChangeStatesRequiredForCountries which changes the default value of
states_required to false.

As the states_required value is now false, this value has to be set
explicitly to true for federated states. Using the list of federated
states from http://en.wikipedia.org/wiki/Federated_state set the
states_required value of these states explicitly to true.

Fixes: #3709

Signed-off-by: Ali Polatel <ali.polatel@ozguryazilim.com.tr>