fixes #39 Refactor Chainr to allow for a Guice Transform Loading

Three distinct top level things were done in this change.

1) The processing of the Chainr Spec file was pulled out of Chainr and into
   a ChainrBuilder.   Existing code can be easily updated by using new
   static method on Chainr.fromSpec() which encapsulates usage of the
   ChainrBuilder.
2) The code that instantiates Transform instances was extracted so that Jolt
   clients can use Guice to load their Custom Java Transforms.
   Additionally,
3) The Transform interface given a new parent interface, JoltTransform.
   The Transform interface gets a sibling interface ContextualTransform that takes an
   additional / optional "context".
   Chainr makes its list of ContextualTransforms available for examination.
   New testing paradigm for validating ContextualTransforms.

Minor Changes
 - Change Chainr transform range to have exclusive "to".
 - Got rid of crufty "java" / "classname" notion.
 - New ChainrSpec/Entry "pojoy" objects used by new ChainrBuilder.
 - Included and annotated "stock" SpecTransforms with standard javax @Inject
 - Removed crufty delegatr stuff from ChainrTest.
Use jsonToMap method.   Update the jsonToMap method to build LinkedHashMaps.
Merge pull request #42 from milosimpson/guice5

fixes #39 Refactor Chainr to allow for a Guice Transform Loading