Add onlyif option to postgresql_psql type

This adds an onlyif option to the postgresql_psql type to allow for commands to only run if the onlyif command succeeds. The primary use case being to only add a table grant if the table exists (if for example, the tables are managed outside of puppet but the grants are managed within puppet).
if this grant type defaults to `database` why are we adding an `onlyif_table_exists` here?