I think we should move forward with this. Kenji, could you please convert this to a pull request? Let's review it there. I'll assign this bug to you, hope you don't mind.
We should definitely change adaptTo to a more marketable name. I think structuralCast should do better.