DRILL-4768: Fix leaking hive meta store connection in Drill's hive metastore client call.
- do not call reconnect if the connection is still alive and the error is caused by either UnknownTableException or access error.
- call close() explicitly before reconnect() and check if client.close() will hit exception.
- make DrillHiveMetaStoreClient closable.
close apache/drill#543