Expose async execute ops for HS2
Expose async execute ops for HS2

With this change queries can be executed asynchronously using HS2.

Example usage:
  cursor.execute_async("SELECT 1")
  while cursor.is_executing():
    sleep(1)
  if cursor.execution_failed():
    # Handle error
  cursor.fetchall()

This allows for an easy way to enforce a query timeout without the need
for threading.

mariusvniekerk/impyla,mariusvniekerk/impyla,laserson/impyla,wesm/impyla,wesm/impyla,bhtucker/impyla,schaffino/impyla,bhtucker/impyla,cloudera/impyla,laserson/impyla,cloudera/impyla,mariusvniekerk/impyla,bhtucker/impyla,schaffino/impyla