Expose VQE-C  metrics through properties.

There's a bunch of metrics data that can be read from VQE-C and
this change exposes some of them. Please consult VQE-C
documentation for more info.

This should be enough for our usage though. Will revisit.
Initialise VQE in gst_vqesrc_class_init rather than start

We need to ensure that VQE-C globals are initialised only once per
process otherwise it is an error so this patch moves initialisation
from state change time to class initialisation time.  This seems to
fit in some ways as classes are static information common to all
objects of a type as are the statics in VQE.  Nonetheless this is
really ugly in other ways as initialising VQE actually involves
reading a configuration file and the parameters it sets aren't fixed
at compile time, unlike much of the information in GstVQESrcClass.

This does also have the positive effect that you no-longer see lots
of errors when calling `gst-inspect-1.0 vqesrc` associated with
collecting statistics.
Work around the global VQEC initialisation problem.

VQEC keeps a global context and has a few global functions to manage it.
This is unfortunate because there's no clean way of resolving the conflicts
between GstVQE instances when accessing this global API.

To work around the problem a global refcount and  mutex was added to help
in managing this shared state. Not pretty but works.