Updated `libsite.sh': cleanup, wildcard tldid

Implemented the `not implemented' return code code, so it is now
communicated back to the user.

User defined variables now now first declared in the library, so that
if the user doesn't want to declare them, it doesn't cause unexpected
behaviours.

Updated user sample/template file so that variables are no longer
declared as `libsite.sh' now does this already.

Updated the tldid wildcard as per nima/site#33.

Moved XPLM configuration (interpreter versions) into common area for
both bash and make.

The var area is no longer put in `/var/tmp', but in the user's home
directory.

General cleanup and house-keeping.
Updated `module/dns': resolver, wildcard tldid

The resolver search was non-exhaustive: The search for the matching
host resolution left out one case where the `hnh' is the `shn', but
the associated `fqdn' is `shn.dn'; i.e., there is no `usdn' in the
middle.  This has been fixed

Retrospective changes for the new wildcard tldid implemented; see
nima/site#33.
Updated `module/net': fix, wildcard tldid

A bug introduced as a result of cleaning up the dns module was found
and squashed.

The tldid wildcard character was changed from `.' to `_' due to the
associated issues logged under nima/site#33.
Updated `module/hgd': search, session names, clean

The regex (/.../) and dor (.) search now not only look into the
`~/.ssh/known_hosts' file, but also at `getent hosts'.

Don't allow bad session names when saving.

Don't allow duplicates in the results from the resolver.

Sort IP addresses intelligently.
Updated `unit/tests/hgd': wildcard tldid
Updated `module/tunnel': cleanup
Updated `module/git': new function `remail'

New utility function to amend the email address of previous commits
using the existing email address as search.
Cleaned `module/vault'
Updated `module/remote': sshproxy, connectivity

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.

Reduced the default number of threads.

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.
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/xplm': fix

There was an issue where the installer would PASS even when it had
actually FAILed; fixed.
Unit test `xplm' added: nima/site#34
Updated `module/ldap': retrospective updates

Much has changed since this module was last tested, and this commit
get this module re-aligned with what is current.
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.
Updated `module/py': doc

Added some docs on package requirements.
Updated `module/mongo'