Fix race condition in Close()
switch to RLock
Merge pull request #162 from PatrickDropbox/master

Fix race condition in producer's Close()
Add default replication to vagrant setup
Merge pull request #165 from Shopify/tweak-vagrant

Add default replication to vagrant setup
Give it more memory by default
Let brokers connect to *all* zookeepers
Merge pull request #167 from Shopify/vagrant-tweaks

Vagrant tweaks
consumer: silently skip messages already consumed

It seems that sometimes the broker can return us messages we've already seen,
and that this is legitimate, so we shouldn't produce errors, just quietly ignore
them.

Possibly fixes #166 pending confirmation from upstream
(https://issues.apache.org/jira/browse/KAFKA-1744).
consumer: more robust handling of message offsets

- Only skip messages before the requested offset at the beginning of a set
- Error if we don't receive any legitimate messages in the set.
consumer: add unit test

also fix a bunch of other bugs found by the test
Make snappy functions private
Merge pull request #168 from Shopify/consumer-skip-consumed-messages

consumer: silently skip messages already consumed
Check some errors

Discovered by https://github.com/kisielk/errcheck
Merge pull request #173 from Shopify/errcheck-1

Check some errors
Rename extraBroker to seedBroker.
Merge pull request #174 from Shopify/seed_broker

Rename extraBroker to seedBroker
New Producer design
Workaround https://issues.apache.org/jira/browse/KAFKA-1718
Add some logging to the new producer