Add blom/rssh module to Puppetfile

rssh (http://www.pizzashack.org/rssh) is a restricted shell for use with
OpenSSH. It allows us to lock down which programs can be run by which users from
the shell.

This commit adds the rSSH module in to the Puppetfile.
Allows rsync in rssh

The rssh Puppet module was added in be7e918, so this commit adds an rssh.pp
manifest in order to configure rssh.

This commit adds an `allow` attribute to the rssh class in order to specify that
only rsync should be allowed. Full details on the values the `allow` attribute
can accept are at https://forge.puppetlabs.com/blom/rssh.
Add rssh to packages manifest

This commit adds the `rssh` module to the packages manifest to ensure that rssh
is present when a Puppet run completes. If it is not present, Puppet installs
it.
Adds base::packages to Hiera

In order to use the packages.pp manifest, we need to add it to the list of
classes autoloaded by Puppet, which is defined within an array in Hiera. This
commit adds the `base::packages` class to the Hiera array.
Add `attachmentgenie/ssh` module to Puppetfile
Add SSH class to Hiera

This commit adds the 'attachmentgenie/ssh' module to the list of classes used in
Hiera. We add this here as we are using Hiera as a lightweight ENC, rather than
the more traditional method of creating an `init.pp` file.

The module contains two classes - `ssh::client` and `ssh::server`. Adding
`ssh::server` in to Hiera to begin with - we can add the client if we decide to
change how we run rsync (currently push-based).
Add `attachmentgenie/ufw` module to Puppetfile
Adds base::ufw manifest

This manifest allows for access to :22 on any IP.
Add class to Hieradata