Can I suggest for solving
https://youtrack.jetbrains.com/issue/KT-19289 (a java interop issue) that Kotlin's behaviour when faced with ambiguous annotations is changed to be more promiscuous? Quite a few frameworks end up being uglier to use than necessary because Kotlin picks a single thing to attach the annotations to, instead of just attaching them everywhere.