switched to AsyncMutex
separated Avro Sink
added KafkaInjections
converted ByteArrayEncoder to use Injection