Java Producer Provider

First pass at adding java producer functionality.  

A lot still needs to be cleaned up
mainly did it to not have too much duplication of creating the ```ProducerUtil::KeyedMessage.new(@topic, msg)```