DRILL-3921: Initialize the underlying record reader lazily in HiveRecordReader
This closes #197
+ OperatorContextImpl has a lazily initialized executor service that is
a decorator around the worker pool. This service is used through
#runCallableAs to run a callable task as the given proxy user.
+ Unit tests use partition student table with chained impersonation to
exercise running multiple delegate callables (creates multiple readers,
a reader per partition).
+ Remove unused WorkManager#shutdownAndAwaitTermination method