basic Makefile for running tests
new dependancy: Test::Deep
Allow the test to run multiple times against the same database
Get the test running on Postgres instead of SQLite
Add new config value to indicate a role in the DB the test can use
Log cases where listing generates an unexpected exception
Get the template routes/test working with Postgres
get the test working on Postgres and runnable multiple times on the same DB
get the test working with Postgres and multiple times against the same DB
Get test working with Postgres
Switch Travis testing to use the "testing" config file
remove SQLite - testing is now done with Postgres
Change TravisCI config to run "make clean" when starting

make clean will ensure Postgres is all set up with a clean DB and
the roles required to run tests
require App::Sqitch to deploy the DB
mark targets phony so they always get built correctly
a value for template_id isn't required to make a database obj

The SQLite schema must have been incorrect and had a NOT NULL constraint
there.
Use the default user or PGUSER instead of hardcoding a user name
Specify the Postgres user when running under TravisCI

This should fix tests after the prior commit
Forgot to use strict/warnings

This showed there was duplicated functions create_database/template
don't make two configurations when running tests with TravisCI