added new classes to see the different ways to consume messages