Serened/beta branch v2

Merging the Java beta branch into master.

Sidekick: @jstenhouse 
FYI: @tmacie @briandela @serened