Extract method: initApplication
Produciton code uses a shared application between many projects.
Tests always dispose the application together with JetCoreEnvironment
Using Disposer.newDisposable() instead of an anonymous class
Use reference counting to dispose the application when needed