Ruby code for the LJC February challenge.
Three branches
- master - is what Dave printed out on the handouts = manual constructor injection
- modules - is what I presented = mixins with modules
- cake - is a new branch that introduces a component layer into the master like a Scala cake pattern