move all the commands and regex into a minimal class in preperation for loading them from a config file
CVL sessions must have directConnect
use displayStrings in sshKeyDist to contain (in the future) all the strings in the dialogs
Merge pull request #28 from l1ll1/master

two pieces of work
Set the icon for the progress bar window on Linux and Windows.
Merge https://github.com/CVL-dev/cvl-fabric-launcher into CVLFAB-191-share-local-directories

runAsyncServerCommandThread now checks for premature termination of process.
If it finds that the process has stopped before the Launcher requested its
termination, then it raises an exception which includes the process's
command and the last non-empty line of output from the process (if any).
One use case for this is if you already have a process using remote port
8080 so trying to create a new reverse tunnel on the same port fails,
then the SSH tunnel for WebDAV will fail with "Error: remote port forwarding
failed for listen port 8080".  Yes, I know, we could just use a different
port every time we do the WebDAV mounting, but I thought it would be nice
if the user could bookmark their WebDAV location in Nautilus, which
requires a consistent port number.

I've pulled in the latest changes from the master branch.

One change pulled in from the master branch is some modification to the
sanity check stuff.

The more major change pulled in from the master branch is moving most
properties of loginprocess to a siteConfig object.  So now we can't
use loginprocess.tunnelCmd (we need to use loginprocess.siteConfig.tunnelCmd
instead), but we can still use loginprocess.jobParams['loginHost'] etc.

The WebDAV tunnel thread is now set as a daemon thread, which helps with
clean-up, i.e. ensuring that there are no lingering WebDAV ssh tunnel
processes remaining after the Launcher exits.

As well as pulling siteConfig-related changes from the master branch,
in this commit I have also moved the WebDAV-related commands and
regular expressions from LoginTasks.py to utilityFunctions.py, where
it is noted that they could eventually be moved into a remote JSON
file, instead of being hard-coded into the Launcher.

The WebDAV command for opening Nautilus now sets always_usr_location_entry
to true (with gconftool-2), so that the user can see the WebDAV location
(URL) in their Nautilus window, and they can bookmark it if they want to.

Conflicts:
	LoginTasks.py
runAsyncServerCommandThread now checks for premature termination of
process.
If it finds that the process has stopped before the Launcher requested
its
termination, then it raises an exception which includes the process's
command and the last non-empty line of output from the process (if any).
One use case for this is if you already have a process using remote port
8080 so trying to create a new reverse tunnel on the same port fails,
then the SSH tunnel for WebDAV will fail with "Error: remote port
forwarding
failed for listen port 8080".  Yes, I know, we could just use a
different
port every time we do the WebDAV mounting, but I thought it would be
nice
if the user could bookmark their WebDAV location in Nautilus, which
requires a consistent port number.

I've pulled in the latest changes from the master branch.

One change pulled in from the master branch is some modification to the
sanity check stuff.

The more major change pulled in from the master branch is moving most
properties of loginprocess to a siteConfig object.  So now we can't
use loginprocess.tunnelCmd (we need to use
loginprocess.siteConfig.tunnelCmd
instead), but we can still use loginprocess.jobParams['loginHost'] etc.

The WebDAV tunnel thread is now set as a daemon thread, which helps with
clean-up, i.e. ensuring that there are no lingering WebDAV ssh tunnel
processes remaining after the Launcher exits.

As well as pulling siteConfig-related changes from the master branch,
in this commit I have also moved the WebDAV-related commands and
regular expressions from LoginTasks.py to utilityFunctions.py, where
it is noted that they could eventually be moved into a remote JSON
file, instead of being hard-coded into the Launcher.

The WebDAV command for opening Nautilus now sets
always_usr_location_entry
to true (with gconftool-2), so that the user can see the WebDAV location
(URL) in their Nautilus window, and they can bookmark it if they want
to.