decode subprocess output in launchers

closes #3326
skip submodule check in package managers

custom DEFAULT_STATIC_FILES_PATH means a package is responsible, and everything should be assumed to be fine.
check static path components
add missing ClusterApp mixin to SSHClusterLauncher

fixes AttributeError on profile_dir in SSHProxyEngineSetLauncher

also adds SSHProxyEngineSetLauncher to ssh launcher collection,
which adds it to the generated config files, help output, etc.
basic launcher tests

doesn't do much at the moment,
but at least makes basic exercise of constructing objects
move anchor-link off of heading text

avoids confusion about where to click, matching Sphinx-style output.

Moves the relevant style to textcell.less
test pretty print when __module__ is None
allow class.__module__ to be None

closes #3376
Merge pull request #3328 from minrk/launcherbytes

decode subprocess output in launchers

closes #3326
Merge pull request #3340 from minrk/submodpkg

skip submodule check in package managers

custom DEFAULT_STATIC_FILES_PATH means a package is responsible, and everything should be assumed to be fine.
Merge pull request #3377 from minrk/nonemod

allow class.__module__ to be None
Merge pull request #3351 from minrk/sshproxy

start basic tests of ipcluster Launchers
Make submodule checks work under Python 3.

Closes gh-3385
toggle heading-link visibility with CSS alone
use .text() instead of .html()
Merge pull request #3357 from minrk/heading-links

move anchor-link off of heading text
Merge pull request #3387 from takluyver/py3-submodules

Make submodule checks work under Python 3

introduces a regression in the submodule check for people who may have fetched a tarball from GitHub,
which will now install an incomplete IPython.
print for virtual env strangeness debug
Merge branch 'master' of github.com:jenshnielsen/ipython