I find switching with keyboard shortcut quite fast.
At least in my usage scenarios I have rarely the need to “bring a window with me”.
Windows are either on multiple activities or even all, or really only on that one activity.
If your IM is regularly needed on multiple activities then you can just configure that.
I have KMail on all my activities and my work chat app on all work related activities.
For the last point it would be best if the app can either support multiple profiles or be activity aware itself.