PR review updates
 - added javadoc
 - fixed double hashing
 - added a parameter for imageType for added flexibility
remove guava 16 dependency