Move params::{user,group} to be set under osfamily

Allows for OS specific $user and $group value specification. For most of
the target operating systems these will both be 'postgres'. For FreeBSD
however these values are 'pgsql'.
Update FreeBSD $confdir to defer to $datadir

This matches the behaviour of most of the other operating systems
configurations.
Change validate_postgresql_connection.sh exec PATH

FreeBSD needs /usr/local/bin in PATH in order to find bash. This does
require that the node has the bash port installed. It might be desired
that a separate script was provided for FreeBSD which used its /bin/sh,
this could be done by changing the for loop in the script to use

    for c in $(jot $TRIES)

in place of

    for (( c=1; c<=$TRIES; c++ ))
Replace psql_db => $user with $default_database.

On FreeBSD systems the $user variable is not 'postgres' so does not
match the default database correctly. These changes use the existing
default_database parameter to replace instances where $user is passed as
the database to be connected to.

These changes are in server::database, server::role and
server::grant.
Merge pull request #391 from geoffgarside/freebsd

Fix FreeBSD support