Updated `module/remote': sshproxy, connectivity, ut

New internal functions introduced to abstract ssh-proxy configuration
parsing since you can now specify an optional port for the ssh proxy
and the parsing is cluttering.

Moving away from using netcat, and using ssh's own `-W' flag for the
`ProxyCommand' option.

Since the tunnel use for ssh bounce boxes is merely to create a path
for the actual ssh connection, there is no point in having it use
secure/slow algorithms as it's a redundant doubling up.

The ssh `ProxyCommand' option changed to use the faster `arcfour'
cipher.

The ssh script had to be updated to reflext recent changes, but
ultimately no longer used - instead `site remote connect' is used as
it will honor the variables set by the user such as ssh proxies and
such naturally by doing so.

Updated `module/remote': dependencies on tmux and socat; and so
updated citm to also install tmux.

Removed or bypassed deprecated ssh-proxy code.

Unit tests updated.
New `libexec/ssh': rewrite

The existing python/paramiko ssh interface has been rewritten in ruby
with net-ssh and friends.  Seems to be a little more reliable and less
annoying to use.

Also the python init file no longer needs to do any magic as pyenv has
since been introduced and handles all the work.
Updated `share/unit/citm': dependency installation

The code for calculating what to install for each module is much
simpler now, a little more elegant, but more importantly - easier
to maintain.
Overhauled `module/xplm'

The installer no longer handles XPLM virtual environments, as this is
an optional feature offered by site, and slows the installer
significantly.  The XPLM modules handles this itself now.

The `xplm.conf' file has been removed.

New functions to more closely interact with the various virtualenv
frameworks.

General cleanup.
Updated `module/xplm.sh': new `run' function
Unit test `xplm' added: nima/site#34
Updated `README.md': added rb, py, pl, and xplm

The `.travis.yml' has been updated to know about (but ignore failure
of (for now)) the new modules, since unit-testing is incomplete.
Updated `module/ldap': retro, fix

Retrospective:

    Much has changed since this module was last tested, and this
    commit get this module re-aligned with what is current.

Fix:

    The `ldap:search' public function didn't format the output
    appropriately, leaving in the `|||' delimeters for multi-attribute
    search results.  This has been fixed.
Updated `module/ng': retrospective updates

Much has changed since this module was last tested, and this commit
get this module re-aligned with what is current.

Use the `core:log' function in private/internal functions instead of
producing output to stderr.
Updated `module/mongo'
Updated `module/gpg'