Add validations to Spree::Order
Add validations to Spree::Order

* This focuses most on improving the existing validations and adding
  validations for the totals that are updated based on user input.

Fixes #6415

azclick/spree,keatonrow/spree,keatonrow/spree,keatonrow/spree,keatonrow/spree,azclick/spree,azclick/spree,azclick/spree