Avoid double-ocpying and a buffer overrun when pushing a Ruby string into Kafka

This approach to shuffling the message buffer into librdkafka relies on librdkafka to safely
copy the buffer for it's own uses from the Ruby string's C pointer.

This has been tested with buffers 2x the size of the SIGSEGV mentioned in #21

Fixes #21
Fixes #13
Merge pull request #22 from rtyler/issues/21-buffer-overrun

Avoid double-ocpying and a buffer overrun when pushing a Ruby string