Make deadBrokerAddrs a map to begin with
If we think the broker is dead, check we can connect

This might help with part of #151 by triggering the WaitForElection timeout if
we're super-eager and request metadata before the cluster even realizes the
broker is gone.
Merge pull request #152 from Shopify/wait-for-dead-brokers

Wait for dead brokers
make logger an interface

make logger an interface

add test, use errLog

revert api change, update documentation

rm unneeded SetLogger
Merge pull request #157 from nikolai-b/master

Make logger an interface
Implement ConstantPartitioner
Use the ConstantPartitioner in the functional test
Merge pull request #160 from Shopify/constant-partitioner

Implement ConstantPartitioner
Add Vagrantfile, and provisioning scripts that set up a working 5-node cluster.

The provisioning scripts are also used on Travis CI.
Re-enable go 1.2 and go 1.1 on Travis
Merge pull request #161 from Shopify/vagrant

Add Vagrantfile, and provisioning scripts that set up a working 5-node cluster
New Producer design
Make channels between topicDispatcher and partitionDispatcher, and partitionDispatcher and leaderDispatcher buffered
Fix shutdown process

- make Close() wait til everything is cleaned up
- fix to avoid sending on closed channel in certain cases

Also: make the "metadata overhead" byte count exact in byteSize().
Expose offset and partiton of acked messages
Merge branch 'producer-ng' into ORBAT/producer-ng

Conflicts:
	producer.go
	simple_producer.go