Have all queries use the async interface

This work is in preparation for handling timeouts in a central place (#632)
Changes "constness" of execute and executeQuery methods because now they use async interface which changes the "state" of the connection.

\cc @springmeyer, @abonnasseau