Added centralized log with rsyslogd. A separate container is used to run rsyslogd to receive from other
containers. All components are using syslog logger (both log4j and logback) to send logs to rsyslogd.

In the mean time, the original log files are still left untouched in the containers.
Refined Kafka container launch script to allow specifying command to run directly.
Refined Kafka container launch script to allow using external IP and port for Kafka broker.

Kafka configuration has single 'advertised' host name and port. When used in Docker container, it
can either bind to private IP or Docker host external IP. When there's a need from both external
and internal, you have to set it to be the external IP and the exposed port.

To do that, add environment 'KAFKA_IP' and 'KAFKA_PORT' with Docker host address and the Kafka
container's exposed port. With boot2docker, since it set DOCKER_HOST automatically, in which case
you can omit the 'KAFKA_IP'.

If all of 'DOCKER_HOST', 'KAFKA_IP' and 'KAFKA_PORT' are not defined, the Kafka would use private
IP and port 9092 as the advertised host name and port.
Refined README.md and all fig config files.