Inventory with supply channels

@gogregor @OlegIlyenko @hajoeichler 

Please review closely, sometimes I had the feeling there better ways to implement it that I didn't found.