Implementation of the gilded rose kata explained here http://craftsmanship.sv.cmu.edu/exercises/gilded-rose-kata