Enable Functions to accept FunctionScoreFunction<T>[]

Enable Functions in FunctionScoreQueryDescriptor accept FunctionScoreFunction<T>[] functions. So when you add multiple functions with different filters, you don't need to have FieldValueFactor for each of them. In the other words, I think we can only make  the following query with this modification. Let me know if I was wrong.
"query": {
    "function_score": {
      "filter": { 
        "term": { "city": "Barcelona" }
      },
      "functions": [ 
        {
              "field_value_factor": {
                "field": "score_US"
              }
        },
        {
          "filter": { "term": { "features": "wifi" }}, 
          "weight": 1
        },
        {
          "filter": { "term": { "features": "garden" }}, 
          "weight": 1
        },
        {
          "filter": { "term": { "features": "pool" }}, 
          "weight": 2 
        }
      ],
      "score_mode": "sum", 
    }
  }