Added javadoc modified slightly client to enable custom consumer implementations