Emulate ES5 coordination factors in ES6
Emulate ES5 coordination factors in ES6

Lack of coordination factors is highlighted as a reason why classic
similarity doesn't work well in ES6.  We can reimplement coordination
factors with a function score query - though this has the disadvantage
of checking each clause against the docs twice; but the second set of
checks are only against docs known to match at least one, so it's at
least not checking every clause against every single doc in the index
twice.

alphagov/rummager,alphagov/rummager