implemented working but dirty wiring and writing for instance method providers and non-static inner class constructors