Mer: Do not lose VM connection state on project change

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

This also allows to use the MerConnection interface to control VMs also
with no Mer project open.

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>
Mer: Use ICore::dialogParent() for all dialogs

Signed-off-by: Martin Kampas <martin.kampas@jolla.com>
Mer: Allow to close VM before changing src path

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