Validate totals

This branch adds validations to `Spree::Order`. It also makes sure the order totals are valid before persisting them.
I wounder if we should use `described_class` instead of `Spree::OrderUpdater` here.