Merge pull request #150 from alexismeneses/master

Pooled connections are marked as closed when the underlying physical connection is closed.
Added JDBC4 schema support
Added JDBC4 abort method (to abort and free connection at network level)
Added JDBC4 network timeout using observers at PGStream level.
In accordance with the specification, this timeout is unrelated to the OS TIMEOUT (SoTimeout of the socket) and to the QUERY TIMEOUT of the jdbc statement.
The limit is applied to each transmission within a single driver API, which is allowed by the specification.
getParentLogger is removed because it has never been a method of interface Connection (it can be safely removed as it has always thrown an exception)
Various specification related fixes on JDBC4 Client Info management
 - the driver shall generate a warning if the client info name specified is not recognized by the driver [see setClientInfo(String name, String value)], was throwing an exception
 - if a property that is currently set on the connection is not present in the properties list, that property is cleared [see Connection.setClientInfo(java.util.Properties)], was doing nothing
use of a checked cast to remove compilation warnings on unwrap methods
Added JDBC4 support for CloseOnCompletion on Statement
Added support for JDBC4 free on arrays