A simple example of the strategy design pattern