Add BrokerConfig

This will let us add more configuration options to the broker without breaking
API so badly.
Add broker read-timeout

Another approach for #55, #90. Should (?) fix issue reported in comments of #73
by @sclasen.
Add write deadline as well

Also correctly handle errors that can occur when setting a deadline.
Merge pull request #96 from eapache/broker-timeout

Broker timeout