Allow multi-level override of cli options from config

Add a '--profile NAME' flag which allows you to configure
multiple different profiles for each command. So for a
tool 'foo#, first look for defaults in a config section
'command:foo:$PROFILE', then look in 'command:foo'

Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
Add ability to resolve groups from the config file

Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
Improve cacheability of patch review stats data

Instead of query data for all projects at once, query each
project in turn. This means that if the command is re-run
multiple times with different, overlapping, project sets
then we hit the cache more frequently.

Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
Add ability to purge the cache of json docs

Signed-off-by: Daniel P. Berrange <berrange@redhat.com>