[WIP] Import cluster implementation by @bsm

This is a WIP to bring @bsm's cluster implementation to Sarama. 

TODO / discussion:

- Do we want to keep it in a separate package or merge it into the main sarama package?
- Tests need to be rewritten to fit the rest of the library.
- Let's use a standard UUID instead of the custom guid implementation.

/cc @eapache @burke 
As a side note, on the current master (f503eb0f) the consumer event channel [can be buffered](https://github.com/Shopify/sarama/blob/f503eb0f7b9756c36537436e28560e067013b59a/consumer.go#L110) (and the default buffer size is 16.) The way I understand it, the `len(events)` check should only fail if the channel isn't buffered; unbuffered channels always have a length of 0: http://play.golang.org/p/mZ7aWiY0ax