added KafkaV2 sink using new kafka producer in 0.8.2-SNAPSHOT

@metacret here is the pull request that we discussed.  Please see suro-server/conf/sink_using_kafkaV2.json for the configuration syntax.
Regarding this one, when I see from kafka.produer.BaseProducer the following code snippet:

```
override def send(topic: String, key: Array[Byte], value: Array[Byte]) {
    val record = new ProducerRecord(topic, key, value)
    if(sync) {
      this.producer.send(record).get()
    } else {
      this.producer.send(record,
        new ErrorLoggingCallback(topic, key, value, false))
    }
  }
```
According to ProducerPerformance testing tool, I don't see much difference between sync mode and async mode of new producer, but could you check the performance again?

Also, ThreadPoolQueuedSink is for the slow entry point client such as ElasticSearch or Kafka old producer but this new shiny producer looks awesome, which means we might not need a ThreadPoolQueuedSink but QueuedSink. What do you think?