Adding Nicolas Patry as contributor

The last commit uses his test case.
Adding Kelly Dunn as contributor

The last fix relies partly on his approach.
Panic on well-defined but unsupported settings

When well-defined settings that are not supported by pq are
present in the environment, we currently ignore them. This
panics instead. Since unexpected values for settings like
PGTZ or PGCLIENTENCODING (which we do not actually support)
could cause data integrity issues, we should complain when
these are present.
Don't panic when settings are as expected

If libpq env vars that we can't allow customization of are
present but set to the values that we need, don't panic--just
ignore them.