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]
Add icon to remove stock items from product section
Use new stock location api in product stock management

[Fixes #3051]
Remove leftovers allow_backorders references

Backorders can be configured now as per stock location or stock item

[Fixes #3049]
Remove Address#phone_validate which is not being used.
Fix phone number for my ocd.
Remove commented out code that is no longer valid.
Merge git://github.com/spree/spree

Conflicts:
	backend/app/views/spree/admin/products/stock.html.erb
	backend/spec/requests/admin/products/stock_management_spec.rb