About the circular dependency, the companion's inner class ``DoCleanJob`` could be actually moved inside this class (it actually makes sense). Would that make it any better?