Example of cake pattern in scala (type safe dependency injection by mixing in traits)