improve / fix shell master setup for varying context instances

This improves security, stability and performance, but also fixes an
ssh level race condition for lingering master control sockets (lonestar).
Merge branch 'fixes' of github.com:saga-project/saga-python into fixes
typo
fix subtle bug which made multiline commands fail if not the first job on a job.Service instance

duh!
make unit tests behave despite #74

A new test was added to the job service test suite which triggers #74 on the
target systems (MacOS, lonestar->gsissh->kraken), but is disabled for now.
fixed race condition
URL should also accept None, as that is what we use in tests sometimes.

This commit also fixes some broken tests, and adds verbosity to some asserts.
python needs line cont markers...
Merge branch 'fixes' into devel
updated changelog
implement support for custom shells
cleanup shell bootstrapping

- save a roundtrip
- ensure POSIX shell
- use timeout
- some documentation
Fixes #82
Thanks Ole for finding it and AM for insight! :)
Merge branch 'devel' into feature/tcsh
fix shell lifetime -- tests pass again
Merge branch 'devel' into feature/master-worker