Metadata snapshot consumer

 * A simple consumer to consume metadata from kafka and write our the difference
 * in the offsets of the partitions from previous run. This is used for
 * accounting purposes to figure out how many events are expected to be read
 * from kafka between successive runs of this consumer.

@brndnmtthws @andykram @wmoss @mrdmnd @jamesmay 
What happens if we exceed three tries here? latestOffsetResponse might still be null.