start to use a connection pool

this isn't perfect but it works