Alternative approach for LOGBACK-849

This request approaches the issue identified in LOGBACK-849 by focusing on ensuring that the executor service is shut down when the context is stopped; e.g. when the application is shutting down.  This addresses most of the concerns/complexity introduced by the approach that shuts down the executor service when the context is reset.  As noted in the code and commit comments, some minor complications are introduced by the fact that ContextBase has never really had a lifecycle up to this point in time.