carrier improvements

- added updateCarrier() hook
- changed shipment mode determination
Yes, I mainly made it to have the logic bound to the class / object and not elsewhere in the application. It surely may be used somewhere else again :)

For now, there are only those two cases. But I guess that once we have all contractual stuff set up we'll also add the time definite express services (like express 9 o'clock and such). So that's a prepared place to handle it later on. 

Are you fine with the way it is right now?