fix(pooled connection queries): Set a retry limit on queries.

This removes the recursion from PooledConnection.execute() and runs the
query retry logic in a loop. This allows us to track the state of the
query and ensure we don't retry it forever.
fix(pooled connection queries): Actually use query and args stored in the PooledConnectionQuery.
Be sure to bind pooledQuery properly in async.whilst
Emit extra log if we failed to run the query after retrying.
Allow max query retries to be configurable.
Emit a log for any error performing a query.
Merge pull request #97 from racker/jirwin/add_retry_limit

WIP: fix(pooled connection queries): Set a retry limit on queries.