An initial pass at exposing the async nature of librdkafka upwards

This should be enough to get some initial review of the API going. Hooking up a
Hermann::Result class to the Hermann::Producer in Ruby is in this commit but
actually driving the librdkafka reactor underneath is not yet hooked up.

Fixes #11
Fixes #15
Fixes #18 


We can either merge this early, or wait until I add the hook-up to librdkafka