checkbox-touch: move app_blob creation outside start_session

This patch moves creation of app_blob outside start_session so it may be
reused by other functions needing to packit befor checkpoint()-ing
plainbox:session:state: add 'bootstrapping' flag

This patch introduces 'bootstrapping' flagged to that might be used in
SessionMetaData. This flag informs about the session is established.
If this flag is the only one present, then it implies that tests have not
yet been started.
checkbox-touch: add resume session functionality

This patch enables resume-session functionality in checkbox-touch.
After session is established session's metadata flag 'bootstrapping' is set
instead of 'incomplete', which is now set when tests are selected.

Fixes: https://bugs.launchpad.net/checkbox-touch/+bug/1375589
Signed-off-by: Maciej Kisielewski <maciej.kisielewski@canonical.com>
checkbox-touch: outlined session storage creation
checkbox-touch: fix PEP8 issues
"automatic merge by tarmac [r=zkrynicki][bug=1375589][author=kissiel]"
plainbox:box: improve PlainBoxTool.create_parse_object()

Signed-off-by: Zygmunt Krynicki <zygmunt.krynicki@canonical.com>
plainbox: be lazier about loading providers

This patch changes the plainbox command in a few fundamental ways. First
of all the 'plainbox --providers' option is removed. It was deprecated a
good while ago and nobody used it anymore. Instead plainbox can be
invoked as 'stubbox' to load the stub provider. In normal mode (when
invoked as plainbox) stubbox is *not* loaded anymore. Some commands
still refer to themselves as being a part of plainbox, 'plainbox dev'
for example, but this is hard to change and not important enough.

This is the only user-visible change here.

The other part of this patch moves the initialization of
PlainBoxToolBase._provider_list far later into the startup process, to
the dispatch_command() method. This is not the ultimate goal as we still
load providers too early (before we even know we need them) but it is
the least invasive (API wise) change that we can make now.

Overall the startup cost of 'plainbox --help' is now much lower.

Signed-off-by: Zygmunt Krynicki <zygmunt.krynicki@canonical.com>
plainbox:applogic: remove the PlainBoxConfig.{welcome_text,default_provider}

This patch removes two of the old (obsolete) configuration keys from the
base plainbox configuration file. Those keys were either entirely
obsolete (default provider) or totally misguided (welcome text) as this
is not something that can belong in a configuration file that users are
expected to edit.

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