plainbox:commands:checkbox: split into cmd+inv

This patch splits the 'checkbox.py' module into two new modules, cmd_checkbox
and inv_checkbox. During plainbox startup only the cmd_checkbox module needs to
be imported and it has minimal requirements so very little overall code needs
to be loaded.

When any commands that actually needs to use the base 'checkbox' functionality
is executed then the inv_checkbox module is imported, bringing in all of the
additional modules it requires.

Tests are adjusted to use the appropriate new module instead, as are the
'checkbox sru', 'checkbox cli' and the 'plainbox run' commands.

Signed-off-by: Zygmunt Krynicki <zygmunt.krynicki@canonical.com>
plainbox:commands:run: split into cmd+inv

This patch splits the 'run.py' module into two new modules, cmd_run and
inv_run. During plainbox startup only the cmd_run module needs to be
imported and it has minimal requirements so very little overall code
needs to be loaded.

When the run command is actually executed then the inv_run module is
imported, bringing in all of the additional modules it requires.

Tests are adjusted to use the appropriate new module instead, as is the
'checkbox cli' command.

Signed-off-by: Zygmunt Krynicki <zygmunt.krynicki@canonical.com>
plainbox:commands:analyze: split into cmd+inv

This patch splits the 'analyze.py' module into two new modules, cmd_analyze and
inv_analyze. During plainbox startup only the cmd_analyze module needs to be
imported and it has minimal requirements so very little overall code needs to
be loaded.

When the analyze command is actually executed then the inv_analyze module is
imported, bringing in all of the additional modules it requires.

Signed-off-by: Zygmunt Krynicki <zygmunt.krynicki@canonical.com>
plainbox:commands:script: split into cmd+inv

This patch splits the 'script.py' module into two new modules, cmd_script and
inv_script. During plainbox startup only the cmd_script module needs to be
imported and it has minimal requirements so very little overall code needs to
be loaded.

When the script command is actually executed then the inv_script module is
imported, bringing in all of the additional modules it requires.

Tests are adjusted to use the appropriate new module instead

Signed-off-by: Zygmunt Krynicki <zygmunt.krynicki@canonical.com>
plainbox:commands:session: split into cmd+inv

This patch splits the 'session.py' module into two new modules,
cmd_session and inv_session. During plainbox startup only the
cmd_session module needs to be imported and it has minimal requirements
so very little overall code needs to be loaded.

When the session command is actually executed then the inv_session
module is imported, bringing in all of the additional modules it
requires.

Signed-off-by: Zygmunt Krynicki <zygmunt.krynicki@canonical.com>
plainbox:commands:device: fix PEP-8 issues

Signed-off-by: Zygmunt Krynicki <zygmunt.krynicki@canonical.com>
plainbox:commands:device: improve output for for odd systems

Signed-off-by: Zygmunt Krynicki <zygmunt.krynicki@canonical.com>
plainbox:commands:list: split into cmd+inv

This patch splits the 'list.py' module into two new modules, cmd_list
and inv_list. During plainbox startup only the cmd_list module needs to
be imported and it has minimal requirements so very little overall code
needs to be loaded.

When the 'plainbox dev list' command is executed then the inv_list
module is imported, bringing in all of the additional modules it
requires.

Signed-off-by: Zygmunt Krynicki <zygmunt.krynicki@canonical.com>
plainbox:commands:check_config: split into cmd+inv

This patch splits the 'check_config.py' module into two new modules,
cmd_check_config and inv_check_config. During plainbox startup only the
cmd_check_config module needs to be imported and it has minimal
requirements so very little overall code needs to be loaded.

When the 'plainbox check-config' command is executed then the
inv_check_config module is imported, bringing in all of the additional
modules it requires.

In addition, all call sites that used to import the old module are
updated to use one of the new modules instead.

Signed-off-by: Zygmunt Krynicki <zygmunt.krynicki@canonical.com>