Add openSUSE and SLES support to docker hypervisor.

On SUSE variants the package installer is called zypper, so add the
RUN statements to install the sshd in terms of zypper.

Additionally we need to explictly configure the sshd to allow root
login via passwords, bypassing pam.
Add a `docker_cmd` option to the docker hypervisor

This opens up the ability to have the docker container run something
closer to an init rather than a simple sshd.  This allows the
container to behave more like a system under test with fully working
service supervision.
Increase read/write timeouts in the docker hypervisor

This change increases the read and write timeouts to the docker api.
By default this is 60 seconds

Additionally we use the version assertion from docker-api so we
don't try and talk to an incompatible api version.
Install ssh clients in the docker hypervisor

Some docker base images are seriously stripped down and will not
include the ssh client packages.  These are normally where the scp
and sftp binaries live which are needed in later provisioning steps.
Refactor the flow of platform specific actions

The previous flow (using the return value from the case statement) was
needlessly complex and caused some confusion.  Refactor to add more explicit
appends to the dockerfile variable in each when block.
Update README to reflect changes to docker hypervisor