plainbox-gui: add initial plainbox-gui code

This new part implements a Qt5 + QML2 + Ubuntu Touch Components based
user interface on top of DBus services exported by PlainBox. The code
here is basically the skeleton that doesn't do much by itself yet (it
can only quit by asking the PlainBox service to exit) but sets the stage
for future development.

This code pulls in new dependencies for testing: there are two new PPAs
to get Qt5 + Ubuntu Touch components on Ubuntu Precise (and onward) and
installs a few related packages. It also runs a simple build smoke test
via test-in-vagrant.sh.

Signed-off-by: Zygmunt Krynicki <zygmunt.krynicki@canonical.com>
Warning dialog prototype
Added SuiteSelection UI
Added SuitesSelection UI.
Still need to get it working properly, lots to do.
Added README for UI code
Merged initial UI work branch by Julia Segal
Added State machine to the main window.
Added skelatal Welcome.
TestSelection has open/close list.
Still need to add to TestSelect: Details, Columns
Readme updated.
TestSelection general UI is working.  As this is not wired to the engine yet, details are missing.
Fixed Test Details to use translatable strings.
Merged from checkbox-ihv-ng
Merged ui_work branch with more changes, by Julia Segal
- Moved list delegates into their own files.
-Suite Selection populated from testSuiteModel
- When items in Suite seletion are selected/unselected model is updated so TestSelection will reflect changes.
- Time estimates moved to list itemes
- Suite time estimates calculated
- If one or more items is selected in the suite, the group is selected
- If no items are selecte in the suite, the suite is unselected.
First selection is current item.
Resizing TestSuite now works.
Moved icons to an artwork directory
Merged from checkbox-ihv-ng
Added skeleton for Run Manager
Added Summary for TestSelection
Added 'artwork/' path to png files used.