Apache Kafka Entities

This is a set of entities for Apache Kafka, which is a distributed messaging system written in Scala. It is useful as part of a Hadoop deployment or as part of a log analytics system, among other things.

The code provides a `KafkaCluster` container with a single `KafkaZookeeper` controller entity and a dynamic `KafkaBroker` cluster. The entities are fully functional, with sensors for scaling metrics, and have been integration tested, although more tests still need to be written.

### References
- http://kafka.apache.org/
- http://research.microsoft.com/en-us/um/people/srikanth/netdb11/netdb11papers/netdb11-final12.pdf

### Further work required:
- Test with API sending messages
- Test that sensors update
- Testing on other operating systems
- Tests on live cloud providers

### Future additions:
- Make zookeeper entities scalable
- Add default scaling policy
- Demo application