First cut on asynchronous append using thread pool.
Merge branch master into master-async-append.
Update threadpool. Wait until no more events are being logged asynchronously.
Update ThreadPool.
Wait for async logging to finish on hierarchy shutdown.
Bump SO version.
Update ThreadPool.