Prevents active clients from decaying incorrectly

A weird bug was exhibited where closing and opening a client would cause it to incorrectly decay despite being preserved. An alternative solution is to not reuse an existing client instance in the connection pool, but to add a new one and automatically remove all decaying instances. This will prevent a memory leak caused by a lot of connection activity, and ensure that active connections are retained.