We need to lock down connections after they're released.  So we'll need Java's proxies for that.  Also, the underlying data structure that represents the pool should store a composite  'entry' object, not the connection itself