Merge pull request #37 from davecramer/master

fix loading of driver so that it checks for beginning of postgresql url before parsing anything
Expose enhanced error message fields from constraint violations.

The server now provides the schema, table, column, datatype, and
constraint names for certain errors.  So expose that to users so
they don't have to go rummaging through the error text trying
to find it.

The server doesn't always provide all the fields and doesn't cover
all the error messages, but it's a good start.  In the future it
would be good to expose this information in a PGXXX class instead
of the supposedly private ServerErrorMessage.
log can not be output when using DataSource
property settings were not being copied to the datasource
these included logLevel, binaryTranfer, sslfactory, applicationName
patch provided by Chen Huajun