Command design pattern example