anchor.diff:  	int get _count => _connections.length + _connecting;
   	int _connecting = 0;
   
  -	_Pool(this._uri, {int timeout, int min: 2, int max: 10})
  +	_Pool(this._uri, {int timeout,
  +	                  int min: 2,
  +	                  int max: 10,
  +	                  pg.TypeConverter typeConverter})
   		: _timeout = timeout,
   		  _min = min,
  -		  _max = max;
  +		  _max = max,
  +		  _typeConverter = typeConverter;
   
   	Future start() {
   		var futures = new List<Future>(_min);
  
positive.code: //TODO implement lifetime. When connection is release if been open for more than lifetime millis, then close the connection, and open another. But need some way to stagger, initial creation, so they don't all expire at the same time.
  
  abstract class Pool {
  	factory Pool(String uri, {int timeout, int min: 2, int max: 10})
  		=> new _Pool(uri, timeout: timeout, min: min, max: max);
  
  	/// Returns once the specified minimum number of connections have connected successfully.
  	Future start();
  
negative.code: 	// Establish another connection, add to the list of available connections.
  	Future _incConnections() {
  		_connecting++;
  		return pg.connect(_uri, typeConverter: _typeConverter)
  		 .then((c) {
  		 	var conn = new _PoolConnection(this, c);
  		 	c.messages.listen((msg) => _messages.add(msg));
  