Use async callback from put record request to respond to message.

Previous implementation was synchronous and blocked event loop
while put record request was in progress.

With this change I'm able to see 1000/second records written to a single Kinesis shard on a single c3.large server in AWS with an avg latency of about 25 ms.  Without the change 100 records/second causes avg latency of mutiple seconds.