Mer: Rewrite MerConnection for more reliable state management

[qtc] Mer: Rewrite MerConnection for more reliable state management. Relates MER#814

Signed-off-by: Martin Kampas <martin.kampas@jolla.com>
Mer: Do not lose MerConnection state on project change

Do not reuse single MerConnection instance. Create one MerConnection
instance for each virtual machine to keep connection properties.

This has also the benefit of minimizing risks for "funny" errors with
reseting instance state when switching to another VM.

Signed-off-by: Martin Kampas <martin.kampas@jolla.com>
Mer: Handle VMs started outside of qtc more considerately

[qtc] Mer: Handle VMs started outside of qtc more considerately

Signed-off-by: Martin Kampas <martin.kampas@jolla.com>
Mer: Do not interrupt build/deploy when VM is not started

- Handle SDK the same way as emulator - with a dedicated build step
- Wait for VM to start instead of aborting build/deploy

[qtc] Mer: Do not interrupt build/deploy when VM is not started

Signed-off-by: Martin Kampas <martin.kampas@jolla.com>
Mer: Report VM connection errors more conveniently

Do not use "Issues" pane to inform about VM connecting errors. This pane
is supposed to list build issues - which is not always the case. Use the
"General Messages" pane instead.

Signed-off-by: Martin Kampas <martin.kampas@jolla.com>
Mer: Allow to configure SSH timeout for SDK VM

[qtc] Mer: Allow to configure SSH timeout for SDK VM. Relates MER#814

Signed-off-by: Martin Kampas <martin.kampas@jolla.com>