[ADAM-357] Added Java Plugin hook for ADAM.

Adds a Java plugin interface for ADAM. @heuermh this is my parallel solution to the Java plugin issues we'd corresponded about on IRC and email a week and a half ago (https://github.com/heuermh/adam-plugins/commit/2b03b8fb489a9167986eb2c05c421473a39e8e33). I'm interested in your thoughts; I think building the abstraction on the Scala side removes a lot of the ugly plumbing needed for Java<->Scala interop.