Javadoc and maven configuration
Fix CachingTermWeigher for BytesRef

CachingTermWeigher used to just use a HashMap for storing terms but that
doesn't work for BytesRef because BytesRefs are mutable.  Factors out the
cache implementation from CachingTermWeigher and the Elasticsearch plugin
gains an implementation useful for dealing with BytesRefs.