* Add connection & query timeout if all clients are checked out
This addresses [pg#1390](https://github.com/brianc/node-postgres/issues/1390).
Ensure connection timeout applies both for new connections and on an exhuasted pool. I also made the library return an error when passing a function as the first param to `pool.query` - previosuly this threw a sync type error.
* Add pg-cursor to dev deps
* Initial work
* Make progress on custom pool
* Make all original tests pass
* Fix test race
* Fix test when DNS is missing
* Test more error conditions
* Add test for byop
* Add BYOP tests for errors
* Add test for idle client error expunging
* Fix typo
* Replace var with const/let
* Remove var usage
* Fix linting
* Work on connection timeout
* Work on error condition tests
* Remove logging
* Add connection timeout
* Add idle timeout
* Test for returning to client to pool after error
fixes#48
* Add idleTimeout support to native client
* Add pg as peer dependency
fixes#45
* Rename properties
* Fix lint
* use strict
* Add draining to pool.end
* Ensure ending pools drain properly
* Remove yarn.lock
* Remove object-assign
* Remove node 8
* Remove closure for waiter construction
* Ensure client.connect is never sync
* Fix lint
* Change to es6 class
* Code cleanup & lint fixes