VNC might work for you. While it doesn't integrate the server apps with whatever client system you want to use but instead give you a Linux desktop in a window. It allows for persistent sessions, everyone can have one and there should be clients for every platform. Plus I imagine that opening a session should be similar from different client systems. Downside: afaik you can not change the virtual screen res on the fly, so while in a session you are stuck with that resolution -- which sucks if you move to a smaller screen ...
Edit: typo
Edit: typo