Recalculate shippingInfo.price.centAmount according to rates. Refs #883

I think the code becomes way more readable if you avoid nested ifs by inverting the expressions inside if and returning early. For example:

````js
var shippingInfo = order.shippingInfo;

if (!shippingInfo) {
    return;
}

var shippingRate  = shippingInfo. shippingRate;

if (!shippingRate) {
    return;
}

var freeAbove = shippingRate.freeAbove;

if (!freeAbove) {
    return;
}

...
````