auth_user support

query the database's pg_shadow table for user information,
instead of using a local userlist.txt.  Brings transparent support
for Postgres 9.0+ which no longer has a compatible file format.

Tested with trust and md5 auth_types only.
fix auth_user with session pooling

the auth_user pool wasn't releasing the server conn, so the
client would end up connected to the db as the auth_user
fix takeover of auth_user when dynamic user is connected to server
fix reconnects of auth_user dbs after online restart

if the user was a dynamic user, the only way the bouncer knows the
password was from a new client connection. if an existing client
starts a transaction before a new client connects, it will not know
the correct password. so pass that info along in the online restart
data.

note that this is backwards compatible - old bouncers just won't send
the password, and it's stuck until the client tries to connect
fix crash when using auth_conn and something times out during login

a client can be linked when in CL_LOGIN due to doing the auth query,
so be prepared to close the associated server as well.
detect server close due to synchronous callbacks
implement database-wide connection limit
evict old connections when needed (if possible) for max_db_connections
simplify oldest connection logic
keep track of connection count during online restart
Merge remote-tracking branch 'ccutrer/dev/auth_user'
Merge remote-tracking branch 'ccutrer/dev/max_db_connections'
gitignore: add more stuff
auth_query: make password loading query configurable