Dynamic Proxies in Kotlin with Coroutines