Cart: Allow separate type for the item discount

To not enforce the same discount type on both the global cart and per
item line