Make Kinesis consumer code more generic, and use disruptor to deliver messages to consumers