Set /tmp as default CWD for postgresql_psql

This has been discussed in issue #148. The postgresql_psql type doesn't
change the CWD to something safe when running psql as the postgres user.
During a regular puppet run the CWD remains "/root", to which the
postgres user usually does not have access, resulting in failed psql
calls and failed puppet runs. This simple change makes "/tmp" the
default CWD for postgresql_psql.
Setting the owner of the database with createdb.
Merge pull request #151 from antaflos/psql_cwd

Set /tmp as default CWD for postgresql_psql
Release 2.2.1 + Changelog

Signed-off-by: Ken Barber <ken@bob.sh>
Merge pull request #176 from kbarber/release_221

Release 2.2.1 + Changelog
Fix example command in README for running system tests on a distro
Add a few more docs about running system tests
Merge pull request #179 from cprice-puppet/maint/master/fix-readme-for-running-system-testswq

Fix example command in README for running system tests on a distro
Correct database_user param name

README formerly incorrectly referred to the password_hash parameter as password.
Merge pull request #184 from MaxMartin/master

Correct README
Convert system tests to use rspec-system

This patch ports all of the existing system tests to use rspec-system instead.

To assist with this conversion some patches were made to fix OS compatibility
where necessary. We also added an ensure parameter to the postgresql::server
class to assist with removing PostgreSQL configuration to aid with testing
cleanups.

The documentation has been updated to indicate test usage with rspec-system,
we've also renamed the 'tests' directory to 'examples'.

Signed-off-by: Ken Barber <ken@bob.sh>
Merge pull request #186 from kbarber/rspec-system-conversion

Convert system tests to use rspec-system
Add support for other operating systems besides Redhat/Debian

Prior to this commit, if you attempted to use the module to
manage postgres on any OS other than Redhat/Debian, there
was an explicit check for that, and a call to `fail`.

In reality, the OS family is only used to build up defaults
for various path and package names, which are all exposed
as parameters.  If the user is willing to explicitly pass
in all of those parameters, there's no reason we should
fail based on OS family.

This commit adds checks to the 'default' osfamily case
such that we now only fail if they're on a non-Redhat-or-Debian
system *and* they haven't explicitly passed in values for
all of the required parameters.
Fix up and add some tests for unknown OS patch

This patch just adds some new tests for the unknown OS patch, and cleans up
some existing tests to look for the new warning message.

Also, change the warning message for $osfamily and manage_package_repo to
reflect the parameter at fault.

Signed-off-by: Ken Barber <ken@bob.sh>
Don't hard-code postgres user's username for pg_hba
Merge pull request #189 from kbarber/feature/master/support-more-distroz

Add more distributions
Merge pull request #188 from cprice-puppet/bug/master/fix-hard-coded-postgres-user-in-hba

Don't hard-code postgres user's username for pg_hba
Merge pull request #156 from harbulot/issue_114

Setting the owner of the database with createdb.
Update docs to reflect new `owner` parameter for `::database` type.
Update Modulefile and Changelog for 2.3.0 release