Fix score evaluation for multiple values in properties

Sometimes fonts has multiple values in family and sub-family in order to unify
other variants into one. they basically make difference in sub-family though,
they also still have standalone family and sub-family. in that case, sub-family is
likely to be Regular.

fontconfig couldn't recognize the difference between :family=Foo:style=Regular
and :family=Foo Caption:style=Regular for example because fontconfig didn't
give different score on matching result for the position of multiple values in
a cache.
Thus, when querying a font like :family=Foo:style=Regular may results
:family=Foo Caption:style=Regular. (see the test case for more details)

To fix this situation, giving different score according to the position
of multiple values in a cache as well as the position of multiple values
in a query.

Fixes fontconfig/fontconfig#283
11 jobs for issue/283 in 9 minutes and 24 seconds (queued for 10 seconds)
Status Name Job ID Coverage
  Build
passed meson android arm64 fedora #11329955

00:01:14

passed meson macos #11329953
gst-macos-10.15

00:03:45

passed meson-mingw-w64-build #11329950

00:06:21

manual meson msys2 #11329954
docker windows 1809 allowed to fail manual
passed meson-shared-build #11329948

00:08:31

passed meson-static-build #11329949

00:07:01

passed meson vs2017 amd64 #11329951
docker windows 1809

00:01:37

passed meson vs2017 x86 #11329952
docker windows 1809

00:01:36

passed mingw-build #11329947

00:08:38

passed shared-build #11329945

00:09:24

passed static-build #11329946

00:09:23