Don't clean the pool on Session cleanup

Cleaning the pool on session cleanup will remove the pool completely even if there are other sessions with the same DSN/PID.

Also, go directly to the pool manager instance to free instead of the internal handle for it.

Add debug logging for when a connection is reused vs created new
Change the max size for a pool to 1

The library should not impose a high connection count by default
Update pool and session tests

Reflecting default pool size and Session._cleanup changes