Integrating Kafka partitioning scheme with Voldemort cluster.xml

- Rename KafkaConsumerDefinition to KafkaTopicDefinition as it will be used by both client and server
- Read from cluster.xml to initialize the VeniceStore
- Add consistent partition, serializing classes for Kafka to use
- Adding KafkaRoutedStore object for producing objects into Kafka
Do we want to pass raw keys here or rather our Venice-wrapped key which includes a special byte at the beginning for differentiating between full puts and partial puts?