Changes to work with Kafka 0.8.0. Version of Kafka pulled from HEAD on January 28 2013.
Updated error handling so when a Broker fails and a new leader is identified the Storm/Trident side doesn't crash.

However this is way less than ideal. Because it isn't clear what will happen if we change the data in the Partition object from Storm we are playing games under the covers to map the current Broker to data in the Partition object.

Need help from Nathan to understand the impact.
Updated error handling so when a Broker fails and a new leader is identified the Storm/Trident side doesn't crash.

However this is way less than ideal. Because it isn't clear what will happen if we change the data in the Partition object from Storm we are playing games under the covers to map the current Broker to data in the Partition object.

Need help from Nathan to understand the impact.
Added retry logic to the Opaque spout.

Fixed retry issue in the reply emitter for Transactional.

Minor code cleanup.
Changed logic to throw the Storm FailedException if we can't talk to Kafka.