Add backorderable default config to StockLocation [Fixes #3045]

Stock items backorderable values will be set according to this config
every time either a variant or a stock location is created

Related to #3323
Add propagate variants config to StockLocation [Fixes #3050]

Every time either a new stock location or new variant is created the
stock_location##propagate_all_variants value will be checked to decide
whether new stock items should be created for the new stock location or
variant

Related to #3323
Do not build packages for missing items

When building shipment packages Spree assumed that every order item had
an existing stock item in all stock locations. But that may not always
be the case since the `propagate_all_variants` config was added to
StockLocation in #3050

I think we should move forward with this. Spree should be smart enough
to figure out which order items exist in which stock locations.
Honestly I don't like the implementation of this fix but it was the only
one I could come up with for now.

This issue was brought in #3051. So we need to figure out it first to
only then merge that PR.

[Fixes #3067]

Related to #3323
Add icon to remove stock items from product section

Related #3323
Use new stock location api in product stock management

Related #3323
Order transitions should be attempted when on the edit page

Fixes #3336
Fix issue where setting backorderable to false would not actually set it
Order stock items by ID to have determinate results in backend's spec/requests/admin/products/stock_management_spec.rb
Fix wrong discount calculation with flat percent promotions when there are more than one line item in the order

Fixes #3054
Add default order to the variants_including_master product association
Translation fix in StockTransfersController. Make back to transfers buttons consistent.

Fixes #3362
Remove optimistic lock from inventory units.

Fixes #3238
Fixes #3367
Show useful error messages for promotion rules and actions

Fixes #3358
Bump rspec-rails to 2.14.0

Fixes #3356
Update Font Awesome to version 3.2.1 with 361 icons total now available in admin

Fixes #3355
Remove items with quantity 0 on cart page

Read line removed in e07f4569f2dd63f411d81b6cf380140a73ac1de1 and add
spec to prove why it needs to be there for now

Fixes #3353
Generate sensibly lengthed SKUs
Add ability to convert Spree::CreditCard objects into ActiveMerchant::Billing::CreditCard objects

This is because some gateways, such as USA EPay, will only take a AM::Billing::CreditCard object.

See here: https://github.com/Shopify/active_merchant/blob/7451976878ee35bdb753e905ccd9a833af0d1a5d/lib/active_merchant/billing/gateways/usa_epay_advanced.rb#L1296

Conflicts:
	core/spec/models/credit_card_spec.rb

Conflicts:
	core/spec/models/credit_card_spec.rb