Enforce ordering of shipping rates in Shipment model
Promo total is no longer factored into Order#shipment_total

This is because to calculate the order total, we take the item total (with no promos), the shipment total (with no promos) and then apply the total of the adjustments. Applying the promo_total within the shipment total calculation means that the order total has that adjustment applied effectively twice.
Allow for Promotion::Actions::FreeShipping#label to be overriden
Show original shipping rate + shipment adjustments in checkout summary
Ensure shipment costs are calculated before their promotions

This was an ordering bug, where the shipments promotions were being calculated before a shipment's final cost was set. This was causing Free Shipping promotions to be applied, but they would result in a $0 adjustment.

Switching the order in which these things happen makes it work.

I've also shored up the test for this within the free_shipping_promotions_spec.rb in the frontend.

Fixes #4428