* Create a structure for collecting unique messages. * Keep track of first checkpoint, and last checkpoint through sequence numbers from Kinesis. * Add specs for core functionality.