multi-valued string support for field facet, refactor shared code with single valued