(PDB-552) Pin support for Puppet to 3.5.1 and above

A bug with environments was solved in Puppet 3.5.1, so for the best results we
are pinning against that release version now.

Signed-off-by: Ken Barber <ken@bob.sh>
(PDB-589) Add indexes to environment foreign keys
Bump catalog/report wire format versions for the benchmark tool
Merge pull request #926 from kbarber/ticket/master/pdb-552-puppet-351

(PDB-552) Pin support for Puppet to 3.5.1 and above
(PDB-567 & PDB-191) Use hash not config_version for report export files

Some users have complained of the inability for the compression library to
translate the configuration version when it contains a forward slash. Not
surprising, I'm sure other parseability and link safety issues will come
from this.

It comes down to the configuration version proving not to be a great
token for uniqueness as the format can be very variable and possibly
not link safe.

This patch changes the configuration version to instead use the a hash
of the combination of state-time and configuration version, and during
anonymization we've stopped using the regexp to obtain any information
(including the hostname) so the name of the file is no longer relevant.

The ticket PDB-567 also suggested an alternative was to upgrade the
compression library to achieve the ability to parse / safely. Since this
is a good idea anyway, I've also upgrade that.

Signed-off-by: Ken Barber <ken@bob.sh>
(PDB-456) Added environments endpoint and related query functions

Querying for all environments i.e. /v4/environments now supported along
with similar short hand queries for reports, events, resources and facts
like /v4/environments/PROD/facts/...
(PDB-465) Remove Ubuntu 14.04 trust support for master

Since we pin against 3.5.1 for Puppet, we need to wait until Puppet does
a trusty release before this will work.

Signed-off-by: Ken Barber <ken@bob.sh>
Merge pull request #944 from kbarber/ticket/master/pdb-465-remove-ubuntu-1404-for-master

(PDB-465) Remove Ubuntu 14.04 trust support for master
Merge pull request #925 from kbarber/ticket/master/pdb-567-report-file-naming

(PDB-567) Use hash not config_version for report export files
Added a ring middleware for creating a db transaction and a fixture for
diagnosing routes that don't create a connection
Fixed inconsistencies in the deprecation warning messages of commands
Merge pull request #942 from senior/ticket/master/pdb-589-indexes-on-environments

(PDB-589) Add indexes to environment foreign keys
Merge pull request #946 from senior/maint/master/command-deprecation-warnings

Fixed inconsistencies in the deprecation warning messages of commands
DRY'd up the environments docs a bit
Merge pull request #929 from senior/ticket/master/pdb-456-environment-endpoints

(PDB-456) Added environments endpoint and related query functions