factored out lots of the param-mangling in Decision#elastic_search to a separate DecisionSearchParamProcessor