CashRegister Kata

I created this kata because I wanted to practice using hashes. It is a variant of the classic backpack problem and lends itself to a dynamic programming solution.