I have three items in my store -- let's say

Hot Dog ($2, qty 100)
Soda ($2, qty 100)
Chips ($2, qty 1)

Is there a way to set up "Combo deals" where when you buy one Combo the inventory is reduced appropriately for multiple items?

For example (using the info above):

Combo A: Hot Dog & Soda, $3
Combo B: Hot Dog & Chips, $3
Combo C: Hot Dog, Soda, & Chips: $4

I have two things I'd like to see happen.

1) If someone buys "Combo A", the quantity available of both Hot Dogs and Sodas should be reduced by one.

2) Because I only have one bag of chips left, if someone buys either a bag of chips on its own, Combo B, or Combo C any combo which includes Chips needs to be made unavailable.

Any ideas? There must be a module out there which handles this sort of thing.