The purpose of this class is to provide a way for HostConfig to get
a Context to delete an expanded WAR after the Context stops. This is to
resolve this issue described in Bug 57772. The alternative solutions
require either duplicating a lot of the Context.reload() code in
HostConfig or adding a new reload(boolean) method to Context that allows
the caller to optionally delete any expanded WAR.

The LifecycleListener approach offers greater flexibility and enables the
behaviour to be changed / extended / removed in future without changing
the Context API.