Avoid invalid query "SELECT DISTINCT DISTINCT" in order search

Weird issue. The double DISTINCT seems to be added by kaminari, couldn't
reproduce it in a spec or in clean rails app

e.g. This query would also result in the same error (or any query
similar within Spree)

    Shipment.where(inventory_units: { id: "a" }).includes(:inventory_units).uniq.page(1).to_a
Validate presence of name in CreditCard
Fix CreditCard sample data
Adding support for spree_xhr_post, spree_xhr_put, spree_xhr_delete

Fixes #4071
use the new line_item_description_text(line_item.description) method.

Removes all the deprecation warnings.
Fixes #4066
Backend taxon controller now using Spree::PermittedAttributes

Fixes #4069
Drop deprecated 'find_by' api to fetch user api key
Remove lib from autoload_paths

We don't want everything inside lib to be autoloaded, factories and test
helpers for example. Applications and extensions should manually require
what they need within lib (as it's already done most of the times
hopefully)
Fix bug when spinner is created every time progressbar is displayed
[Fixes #4065]