He found that iMessage Chat for Android essentially inserted itself into the middle of the normal back-and-forth between a user and Apple's iMessage servers. In a thread on Hacker News [https://news.ycombinator.com/item?id=6435902], Freeman spelled out his findings.
At least on iOS, the man-in-the-middle part would not seem unusual:
As far as I know, messaging apps that want to be available to the user all the time, need the user credentials in order to keep the users online since there is no way on iOS for an app to reliably run all the time. And such messaging apps use the user credentials on their own server(s) to keep the users online and reachable. If the app is no longer running and a new message arrives, the server sends a notification to iOS and the user can open the app if he wants to read the new message.
A major difference is of course that the iMessage user credentials are (cannot be?) used only for messaging.