HPCC-11734 Fix efficiency issues with CQuerySetQueriesPager

1) In CQuerySetQueriesPager::getElements(), change the unlocked
connection to /QuerySets to read lock connection. 2) Revise the
getElements() to avoid re-connect to /QuerySets. 3) Revise the
getQueryRegistry() to not double lock the /QuerySets. 4) Revise
getQueryRegistryRoot() to not lock to /QuerySets twice. 5) Only
lock the /QuerySets/QuerySet if a QuerySet ID is specified. At
this time, not many things can be done for server-side matching
because the parent properties of a query node are not reachable
(no 'up' axis support). For example, the parent property Alias
is used to set query's property @activated.

Signed-off-by: wangkx <kevin.wang@lexisnexis.com>
This returned IPT will cause 'globalLock' to remain linked and therefore locked.
Prior to this change the connection to /QuerySets was transient and a lock to individaul QuerySet was established and returned.
So this changes the locking semantics and I doubt for the better.