Limit guava caches to 31.9GB

Guava's caches have overflow issues around 32GB with our default segment
count of 16 and weight of 1 unit per byte.  We give them 100MB of headroom
so 31.9GB.

This limits the sizes of both the field data and filter caches, the two
large guava caches.

Closes #6268
[TESTS] Fix test bug in SimpleValidateQueryTests.
[TESTS] Fix test to use index-level doc IDs instead of segment-level doc IDs.
[TESTS] Left-over from 14420d7c4e15df9b565b50ef5beab797f756c3ac.
Added `top_hits` aggregation that keeps track of the most relevant document being aggregated per bucket.

Closes #6124