high performance logging using PooledLogger

Async logging using a thread pool. Use BufferedEventSinkFactory