Estimator tweaks improvements (performance)

These were part of https://github.com/spree/spree/pull/5676 but I'm moving them here just so we only focus on the `order.contents.add` action there. I was too naive thinking I could review both add to card and the transition to shipment state in one shot.

Dont intend to do any more work here for the time being. Unless someone finds any issue with the changes or we get a broken build it can be merged soon into master. Reviews are much appreciated.
I _think_ you're missing the point here. I didn't do `includes` because I want to eager load *all* zones at once here. If I do the way you suggest the same Zone could be instantiated many times. Makes sense? `includes` is not always the only / best / proper solution. Let me know if I'm missing something here pls.