refactor order content model

fixes #5545
Restore accessor method `package.order`, now computing it based on the first inventory_unit.

Added specs to detect the regression.
This caused significant problems in spree_active_shipping, which relies on `package.order.ship_address`

fixes #5546
Fix migration issue where default column doesnt exist yet.
Fix "non_tax" scope for Adjustments

Needed to account for nulls
fixes #5550
Remove unused permit_attr call.
Fix variant price validation to allow nil

* The check_price validation already asserts presence, or not depending on
  the system config, and unnecessarily validations are done when
  the master variant price is not required.

Conflicts:
	core/app/models/spree/variant.rb

fixes #5552
Fix pagination in /api/taxons/products
fixes #5554
Fix order / adjustment presence in adjustments

* Fix admin action producing adjustments without direct order reference.
* Add validation for the presence of adjustable
* Adjustments without an adjustable item do not make too much sense
* Add migration to fix old adjustments without direct order reference

fixes #5556
Don't trigger the reimbursement mailer until the reimbursement has been persisted

fixes #5560
Fix spec.
Fix the cookie domain used for google analytics

* A change needed to make the google analytics integration compatible
  with the universal analytics engine. Should also work for the
  traditional code.

fixes #5565
Fix validation to skip performing a query if the field is blank
fixes #5565
Only reload shipment items on item adjustment

The original issue fixed by
https://github.com/spree/spree/commit/a4b209c7288198124a735d99203102d86be6a935
only affected shipment calculations. Removing the reload for LineItems
allows them, and more important their descendants to be eager loaded.

fixes #5566
Pass item to Adjustment#update to avoid N+1

Conflicts:
	core/app/models/spree/item_adjustments.rb

fixes #5567
Change an inventory unit to be removed when it's line item is removed

* This will fix the foreign key violation when a line item is removed
  in the cart.

fixes #5568
Fix spelling
fixes #5564
Fix admin order open/close adjustments to affect all adjustments

* The previous code was just opening and closing the order-specific
  adjustments, not the line items or shipping adjustments.

Conflicts:
	backend/spec/controllers/spree/admin/orders_controller_spec.rb

fixes #5558
add an else statement for listing all promotion categories

load the new page on the index page via js

when no promotions, update add one promotion width

it says alpha twelve. There’s nothing that gets rendered to the right
as omega four, so this update fixes that aesteticly.

fixes #5563
Fix gitignore to exclude vendor

* Build scripts install to ./vendor, after testing something locally via
  the officially supported method `git status` should still list a
  pristine repository.

fixes #5573
fix #4826 ambiguous column name

fixes #5572
fixes #4826